public class BundleUtils
extends java.lang.Object
Modifier and Type | Field | Description |
---|---|---|
static java.lang.String |
FILE_SCHEMA |
|
static java.lang.String |
REFERENCE_FILE_SCHEMA |
|
static java.lang.String |
REFERENCE_SCHEME |
Constructor | Description |
---|---|
BundleUtils() |
Modifier and Type | Method | Description |
---|---|---|
static boolean |
canStart(org.osgi.framework.Bundle bundle) |
If the bundle fulfills the conditions below, it could be started
a.
|
static boolean |
canStop(org.osgi.framework.Bundle bundle) |
If the bundle fulfills the conditions below, it could be stopped
a.
|
static boolean |
canUninstall(org.osgi.framework.Bundle bundle) |
If the bundle fulfills the conditions below, it could be un-installed
a.
|
static org.osgi.framework.Bundle |
getBundle(java.lang.ClassLoader classLoader,
boolean unwrap) |
Returns bundle (if any) associated with the classloader.
|
static org.osgi.framework.Bundle |
getContextBundle(boolean unwrap) |
Returns bundle (if any) associated with current thread's context classloader.
|
static java.net.URL |
getEntry(org.osgi.framework.Bundle bundle,
java.lang.String name) |
1, If the bundle was installed with reference directory mode
return the file URL directly.
|
static java.util.Enumeration<java.lang.String> |
getEntryPaths(org.osgi.framework.Bundle bundle,
java.lang.String name) |
Works like
Bundle.getEntryPaths(String) but also returns paths
in attached fragment bundles. |
static java.net.URL |
getNestedEntry(org.osgi.framework.Bundle bundle,
java.lang.String jarEntryName,
java.lang.String subEntryName) |
|
static java.util.LinkedHashSet<org.osgi.framework.Bundle> |
getWiredBundles(org.osgi.framework.Bundle bundle) |
|
static java.util.LinkedHashSet<org.osgi.framework.Bundle> |
getWiredBundles(org.osgi.service.packageadmin.PackageAdmin packageAdmin,
org.osgi.framework.Bundle bundle) |
|
static boolean |
isFragment(org.osgi.framework.Bundle bundle) |
|
static boolean |
isResolved(org.osgi.framework.Bundle bundle) |
Based on the constant field values, if it is bigger than the RESOLVED status value, the bundle has been resolved by the framework
|
static void |
resolve(org.osgi.framework.Bundle bundle) |
resolve method will try to load the Object.class, the behavior triggers a resolved request to the OSGI framework.
|
static java.io.File |
toFile(java.lang.String url) |
Translate the reference:file:// style URL to the underlying file instance
|
static java.io.File |
toFile(java.net.URL url) |
|
static java.io.File |
toFile(org.osgi.framework.Bundle bundle) |
|
static java.lang.String |
toReferenceFileLocation(java.io.File file) |
|
static org.osgi.framework.Bundle |
unwrapBundle(org.osgi.framework.Bundle bundle) |
If the given bundle is a
DelegatingBundle this function will return the main
application bundle backing the DelegatingBundle . |
public static final java.lang.String REFERENCE_SCHEME
public static final java.lang.String FILE_SCHEMA
public static final java.lang.String REFERENCE_FILE_SCHEMA
public static boolean isResolved(org.osgi.framework.Bundle bundle)
bundle
- public static void resolve(org.osgi.framework.Bundle bundle)
bundle
- public static boolean canStart(org.osgi.framework.Bundle bundle)
bundle
- public static boolean canStop(org.osgi.framework.Bundle bundle)
bundle
- public static boolean canUninstall(org.osgi.framework.Bundle bundle)
bundle
- public static boolean isFragment(org.osgi.framework.Bundle bundle)
public static org.osgi.framework.Bundle getContextBundle(boolean unwrap)
public static org.osgi.framework.Bundle getBundle(java.lang.ClassLoader classLoader, boolean unwrap)
classLoader
- unwrap
- if true and if the bundle associated with the context classloader is a
DelegatingBundle
, this function will return the main application bundle
backing the DelegatingBundle
. Otherwise, the bundle associated with
the context classloader is returned as is. See BundleClassLoader.getBundle(boolean)
for more information.public static org.osgi.framework.Bundle unwrapBundle(org.osgi.framework.Bundle bundle)
DelegatingBundle
this function will return the main
application bundle backing the DelegatingBundle
. Otherwise, the bundle
passed in is returned as is.public static java.util.Enumeration<java.lang.String> getEntryPaths(org.osgi.framework.Bundle bundle, java.lang.String name)
Bundle.getEntryPaths(String)
but also returns paths
in attached fragment bundles.bundle
- name
- public static java.net.URL getEntry(org.osgi.framework.Bundle bundle, java.lang.String name) throws java.net.MalformedURLException
Bundle.getEntry(String)
In addition to the searching abaove, it also checks attached fragment bundles for the given entry.bundle
- name
- java.net.MalformedURLException
public static java.net.URL getNestedEntry(org.osgi.framework.Bundle bundle, java.lang.String jarEntryName, java.lang.String subEntryName) throws java.net.MalformedURLException
java.net.MalformedURLException
public static java.io.File toFile(org.osgi.framework.Bundle bundle)
public static java.io.File toFile(java.net.URL url)
public static java.io.File toFile(java.lang.String url)
url
- public static java.lang.String toReferenceFileLocation(java.io.File file) throws java.io.IOException
java.io.IOException
public static java.util.LinkedHashSet<org.osgi.framework.Bundle> getWiredBundles(org.osgi.framework.Bundle bundle)
public static java.util.LinkedHashSet<org.osgi.framework.Bundle> getWiredBundles(org.osgi.service.packageadmin.PackageAdmin packageAdmin, org.osgi.framework.Bundle bundle)
Copyright © 2005–2018. All rights reserved.