Package org.osgi.service.packageadmin

Examples of org.osgi.service.packageadmin.PackageAdmin


        }
    }

    private PackageAdmin getPackageAdmin()
    {
        PackageAdmin pa = null;
        m_ref = m_context.getServiceReference(
            org.osgi.service.packageadmin.PackageAdmin.class.getName());
        if (m_ref != null)
        {
            pa = (PackageAdmin) m_context.getService(m_ref);
View Full Code Here


        return null;
    }

    private BundleAnnotationFinder createBundleAnnotationFinder(Bundle bundle) {
        ServiceReference sr = this.context.getServiceReference(PackageAdmin.class.getName());
        PackageAdmin pa = (PackageAdmin) this.context.getService(sr);
        BundleAnnotationFinder baf = null;
        try {
            baf = new BundleAnnotationFinder(pa, bundle);
        } catch (Exception e) {
            // TODO Auto-generated catch block
View Full Code Here

public class StartBundleCommand extends Command {
    private final RefreshPackagesMonitor m_refreshMonitor = new RefreshPackagesMonitor();

    protected void doExecute(DeploymentSessionImpl session) throws Exception {
        AbstractDeploymentPackage source = session.getSourceAbstractDeploymentPackage();
        PackageAdmin packageAdmin = session.getPackageAdmin();
        RefreshPackagesListener listener = new RefreshPackagesListener();
        LogService log = session.getLog();

        session.getBundleContext().addFrameworkListener(listener);
        packageAdmin.refreshPackages(null);
        m_refreshMonitor.waitForRefresh();
        session.getBundleContext().removeFrameworkListener(listener);

        // start source bundles
        BundleInfoImpl[] bundleInfos = source.getOrderedBundleInfos();
View Full Code Here

            return bundles;
        }

        // Accessing unresolved bundle
        ServiceReference serviceRef = fBundleContext.getServiceReference(PackageAdmin.class.getName());
        PackageAdmin admin = (PackageAdmin) fBundleContext.getService(serviceRef);
        bundles = admin.getBundles(bundleName, version);
        if (bundles != null && bundles.length > 0)
        {
            return bundles;
        }
        return null;
View Full Code Here

                        return 1;
                    }
                }, null);

        b.getBundleContext().registerService(PackageAdmin.class.getName(),
                new PackageAdmin()
                {

                    public boolean resolveBundles(Bundle[] bundles)
                    {
                        // TODO Auto-generated method stub
View Full Code Here

        }
    }

    private Bundle getBundle(BundleContext bundleContext, String symbolicName, String packageName) throws Exception {
        ServiceReference reference = bundleContext.getServiceReference(PackageAdmin.class.getName());
        PackageAdmin packageAdmin = (PackageAdmin) bundleContext.getService(reference);
        try {
            if (symbolicName != null) {
                Bundle[] bundles = packageAdmin.getBundles(symbolicName, null);
                if (bundles == null) {
                    throw new Exception("Unable to find bundle based on symbolic name. There is no bundle with " + symbolicName + " symbolic name");
                } else if (bundles.length > 1) {
                    throw new Exception("Found multiple bundles with the same symbolic name: " + symbolicName);
                } else {
                    return bundles[0];
                }
            } else if (packageName != null) {
                ExportedPackage exportedPackage = packageAdmin.getExportedPackage(packageName);
                if (exportedPackage == null) {
                    throw new Exception("Unable to find bundle based on package name. There is no bundle that exports " + packageName + " package");
                }
                return exportedPackage.getExportingBundle();
            } else {
View Full Code Here

        BundleContext bundleContext = bundle.getBundleContext();
        if (bundleContext == null) {
            return new LinkedHashSet<Bundle>(0);
        } else {
            ServiceReference reference = bundleContext.getServiceReference(PackageAdmin.class.getName());
            PackageAdmin packageAdmin = (PackageAdmin) bundle.getBundleContext().getService(reference);
            try {
                return getWiredBundles(packageAdmin, bundle);
            } finally {
                bundle.getBundleContext().ungetService(reference);
            }
View Full Code Here

        }
    }   
   
    private void tldScanClassPath(Bundle bundle) throws Exception {
        ServiceReference reference = bundle.getBundleContext().getServiceReference(PackageAdmin.class.getName());
        PackageAdmin packageAdmin = (PackageAdmin) bundle.getBundleContext().getService(reference);
               
        BundleResourceFinder resourceFinder = new BundleResourceFinder(packageAdmin, bundle, "META-INF/", ".tld");
        resourceFinder.find(new ResourceFinderCallback() {

            public boolean foundInDirectory(Bundle bundle, String basePath, URL url) throws Exception {
View Full Code Here

            } finally {
                IOUtils.close(fi);
            }

            reference = context.getServiceReference(PackageAdmin.class.getName());
            PackageAdmin packageAdmin = (PackageAdmin) context.getService(reference);
           
            Bundle[] bundles = new Bundle [] { targetBundle };
            // resolve the bundle
            if (!packageAdmin.resolveBundles(bundles)) {
                StringBuilder builder = new StringBuilder();
                builder.append("Updated ").append(bundleName).append(" bundle cannot be resolved.");
               
                // check for resolver errors
                ResolverErrorAnalyzer errorAnalyzer = new ResolverErrorAnalyzer(context);
                String resolverErrors = errorAnalyzer.getErrorsAsString(Arrays.asList(bundles));
                if (resolverErrors != null) {
                    builder.append(" ").append(resolverErrors);
                }
               
                throw new BundleException(builder.toString());
            }
           
            Set<Bundle> dependents = new HashSet<Bundle>();
            collectDependentBundles(packageAdmin, dependents, targetBundle);
            if (!dependents.isEmpty()) {
                String bundleListString = bundleCollectionToString(dependents);
                LOG.info("Update of {} bundle will cause the following bundles to be refreshed: {}", bundleName, bundleListString);
            }
           
            // install listener for package refresh
            refreshListener = new RefreshListener();
            context.addFrameworkListener(refreshListener);

            // refresh the bundle - this happens asynchronously
            packageAdmin.refreshPackages(bundles);

            // update application archive
            try {
                updateArchive(targetBundle, bundleFile);
            } catch (Exception e) {
View Full Code Here

    private void install(DeploymentMetadataFactory deploymentFactory) throws Exception {

        BundleContext bundleContext = bundle.getBundleContext();
       
        AriesApplicationResolver resolver = null;
        PackageAdmin packageAdmin = null;
       
        ServiceReference resolverRef = bundleContext.getServiceReference(AriesApplicationResolver.class.getName());
        ServiceReference packageAdminRef = bundleContext.getServiceReference(PackageAdmin.class.getName());
                             
        applicationBundles = new HashSet<Bundle>();
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.