|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.eclipse.jetty.osgi.boot.utils.internal.DefaultFileLocatorHelper
public class DefaultFileLocatorHelper
From a bundle to its location on the filesystem. Assumes the bundle is not a jar.
Field Summary |
---|
Fields inherited from interface org.eclipse.jetty.osgi.boot.utils.BundleFileLocatorHelper |
---|
CLASS_NAME, DEFAULT |
Constructor Summary | |
---|---|
DefaultFileLocatorHelper()
|
Method Summary | |
---|---|
java.util.Enumeration<java.net.URL> |
findEntries(org.osgi.framework.Bundle bundle,
java.lang.String entryPath)
Helper method equivalent to Bundle#getEntry(String entryPath) except that it searches for entries in the fragments by using the Bundle#findEntries method. |
java.io.File |
getBundleInstallLocation(org.osgi.framework.Bundle bundle)
Works with equinox, felix, nuxeo and probably more. |
java.io.File |
getFileInBundle(org.osgi.framework.Bundle bundle,
java.lang.String path)
Locate a file inside a bundle. |
static java.net.URL |
getFileURL(java.net.URL url)
Only useful for equinox: on felix we get the file:// url already. |
static java.net.URL |
getLocalURL(java.net.URL url)
Only useful for equinox: on felix we get the file:// or jar:// url already. |
java.io.File[] |
locateJarsInsideBundle(org.osgi.framework.Bundle bundle)
If the bundle is a jar, returns the jar. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public DefaultFileLocatorHelper()
Method Detail |
---|
public java.io.File getBundleInstallLocation(org.osgi.framework.Bundle bundle) throws java.lang.Exception
getBundleInstallLocation
in interface BundleFileLocatorHelper
bundle
- The bundle
java.lang.Exception
public java.io.File getFileInBundle(org.osgi.framework.Bundle bundle, java.lang.String path) throws java.lang.Exception
getFileInBundle
in interface BundleFileLocatorHelper
bundle
- path
-
java.lang.Exception
public java.util.Enumeration<java.net.URL> findEntries(org.osgi.framework.Bundle bundle, java.lang.String entryPath)
findEntries
in interface BundleFileLocatorHelper
bundle
- entryPath
-
public java.io.File[] locateJarsInsideBundle(org.osgi.framework.Bundle bundle) throws java.lang.Exception
Good enough for our purpose (TldLocationsCache when it scans for tld files inside jars alone. In fact we only support the second situation for development purpose where the bundle was imported in pde and the classes kept in a jar.
locateJarsInsideBundle
in interface BundleFileLocatorHelper
bundle
-
java.lang.Exception
public static java.net.URL getLocalURL(java.net.URL url)
Get a URL to the bundle entry that uses a common protocol (i.e. file: jar: or http: etc.).
public static java.net.URL getFileURL(java.net.URL url)
Get a URL to the content of the bundle entry that uses the file: protocol. The content of the bundle entry may be downloaded or extracted to the local file system in order to create a file: URL.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |