Class BundleAssignableClassFinder


  • public class BundleAssignableClassFinder
    extends BundleClassFinder
    Version:
    $Rev: 1052987 $ $Date: 2010-12-27 02:27:28 +0100 (Mon, 27 Dec 2010) $
    • Constructor Detail

      • BundleAssignableClassFinder

        public BundleAssignableClassFinder​(org.osgi.service.packageadmin.PackageAdmin packageAdmin,
                                           org.osgi.framework.Bundle bundle,
                                           java.lang.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,
                                           java.lang.Class<?>[] clses,
                                           org.osgi.framework.Bundle bundle)
    • Method Detail

      • isClassAcceptable

        protected boolean isClassAcceptable​(java.lang.String name,
                                            java.io.InputStream in)
                                     throws java.io.IOException
        Overrides:
        isClassAcceptable in class BundleClassFinder
        Throws:
        java.io.IOException
      • toASMStylePackageName

        protected java.lang.String toASMStylePackageName​(java.lang.String className)
        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"