org.mule.devkit.dynamic.api.loader
Class JarLoader

java.lang.Object
  extended by org.mule.devkit.dynamic.api.loader.Loader
      extended by org.mule.devkit.dynamic.api.loader.JarLoader

public class JarLoader
extends Loader


Constructor Summary
JarLoader()
           
 
Method Summary
protected  Class<?> findModuleClass(List<String> fileNames, ClassLoader classLoader)
           
protected  List<Class<?>> findModuleSubClasses(Class<?> moduleClass, List<String> fileNames, URLClassLoader classLoader)
           
protected  Class<?> findMostSpecificSubClass(List<Class<?>> moduleSubClasses)
           
protected  List<String> findPotentialModuleClassNames(List<String> fileNames)
           
 Module load(List<URL> urls)
           
protected  ConnectionManager<?,?> loadConnectionManager(String generatedPackageName, String moduleName, Capabilities capabilities, ClassLoader classLoader)
           
 
Methods inherited from class org.mule.devkit.dynamic.api.loader.Loader
extractAnnotation, extractAnnotationName, extractClassName, extractMethodParameterNames, extractMethodParameterTypes, extractMinMuleVersion, extractName, findMessageProcessorClass, findMessageSourceClass, findTransformerClass, listMethodParameters, listParameters, listProcessors, listSources, listTransformers, load, load
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JarLoader

public JarLoader()
Method Detail

findPotentialModuleClassNames

protected final List<String> findPotentialModuleClassNames(List<String> fileNames)
Parameters:
fileNames -
Returns:
all potential Module class name among specified `fileNames`

findModuleClass

protected final Class<?> findModuleClass(List<String> fileNames,
                                         ClassLoader classLoader)
Parameters:
fileNames -
classLoader -
Returns:
first module found among `fileNames`

findMostSpecificSubClass

protected final Class<?> findMostSpecificSubClass(List<Class<?>> moduleSubClasses)
Parameters:
moduleSubClasses -
Returns:
Class among specified classes having biggest number of parent Classes

loadConnectionManager

protected final ConnectionManager<?,?> loadConnectionManager(String generatedPackageName,
                                                             String moduleName,
                                                             Capabilities capabilities,
                                                             ClassLoader classLoader)
Parameters:
generatedPackageName -
moduleName -
capabilities -
classLoader -
Returns:
ConnectionManager for module if any, null otherwise

findModuleSubClasses

protected final List<Class<?>> findModuleSubClasses(Class<?> moduleClass,
                                                    List<String> fileNames,
                                                    URLClassLoader classLoader)
Parameters:
moduleClass -
fileNames -
classLoader -
Returns:
all Module sub Classes

load

public final Module load(List<URL> urls)
                  throws IOException
Parameters:
urls -
Returns:
a Module representation of first module found in specified `urls`
Throws:
IOException


Copyright © 2010–2015 MuleSoft, Inc.. All rights reserved.