Package org.apache.xbean.finder
Class BundleAssignableClassFinder
java.lang.Object
org.apache.xbean.osgi.bundle.util.BundleClassFinder
org.apache.xbean.finder.BundleAssignableClassFinder
- Version:
- $Rev: 1052987 $ $Date: 2010-12-27 02:27:28 +0100 (Mon, 27 Dec 2010) $
-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.xbean.osgi.bundle.util.BundleClassFinder
BundleClassFinder.DummyDiscoveryFilter, BundleClassFinder.NonImportedPackageDiscoveryFilter
-
Field Summary
Fields inherited from class org.apache.xbean.osgi.bundle.util.BundleClassFinder
bundle, discoveryFilter, EXT, FULL_CLASS_DISCOVERY_FILTER, IMPORTED_PACKAGE_EXCLUSIVE_FILTER, packageAdmin, PATTERN
-
Constructor Summary
ConstructorsConstructorDescriptionBundleAssignableClassFinder
(org.osgi.service.packageadmin.PackageAdmin packageAdmin, Class<?>[] clses, org.osgi.framework.Bundle bundle) BundleAssignableClassFinder
(org.osgi.service.packageadmin.PackageAdmin packageAdmin, org.osgi.framework.Bundle bundle, Class<?>[] clses, ClassDiscoveryFilter discoveryFilter) Create a new BundleClassFinder, it will search all the classes based the rule defined by the parameters via ASM tool -
Method Summary
Modifier and TypeMethodDescriptionprotected BundleClassFinder
createSubBundleClassFinder
(org.osgi.service.packageadmin.PackageAdmin packageAdmin, org.osgi.framework.Bundle bundle, ClassDiscoveryFilter classDiscoveryFilter) protected boolean
isClassAcceptable
(String name, InputStream in) protected boolean
isClassAcceptable
(URL url) protected String
toASMStylePackageName
(String className) Get the ASM style package name from the parameter className.Methods inherited from class org.apache.xbean.osgi.bundle.util.BundleClassFinder
addSlash, find, isWired, isWired, loadClasses, toJavaStyleClassName, toJavaStylePackageName
-
Constructor Details
-
BundleAssignableClassFinder
public BundleAssignableClassFinder(org.osgi.service.packageadmin.PackageAdmin packageAdmin, org.osgi.framework.Bundle bundle, Class<?>[] clses, ClassDiscoveryFilter discoveryFilter) Create a new BundleClassFinder, it will search all the classes based the rule defined by the parameters via ASM tool- Parameters:
packageAdmin
-bundle
-clses
-discoveryFilter
-
-
BundleAssignableClassFinder
public BundleAssignableClassFinder(org.osgi.service.packageadmin.PackageAdmin packageAdmin, Class<?>[] clses, org.osgi.framework.Bundle bundle)
-
-
Method Details
-
createSubBundleClassFinder
protected BundleClassFinder createSubBundleClassFinder(org.osgi.service.packageadmin.PackageAdmin packageAdmin, org.osgi.framework.Bundle bundle, ClassDiscoveryFilter classDiscoveryFilter) - Overrides:
createSubBundleClassFinder
in classBundleClassFinder
-
isClassAcceptable
- Overrides:
isClassAcceptable
in classBundleClassFinder
- Throws:
IOException
-
isClassAcceptable
- Overrides:
isClassAcceptable
in classBundleClassFinder
-
toASMStylePackageName
Get the ASM style package name from the parameter className. If the className is ended with .class extension, e.g. /org/apache/geronimo/TestCass.class or org.apache.geronimo.TestClass.class, then org/apache/geronimo is returned If the className is not ended with .class extension, e.g. /org/apache/geronimo/TestCass or org.apache.geronimo.TestClass, then org/apache/geronimo is returned- Parameters:
className
-- Returns:
- ASM style package name, should be in the format of "org/apache/geronimo"
-