org.apache.beehive.controls.runtime.assembly
Class Assembler

Object
  extended by Assembler

public class Assembler
extends Object

Helper class to execute assembly logic.


Constructor Summary
Assembler()
           
 
Method Summary
static void assemble(File moduleRoot, String moduleName, File srcOutputRoot, String factoryName, Map<String,String> controlTypeToImpl, Map<String,Set<String>> controlTypeToClients, ClassLoader cl)
          Executes basic assembly algorithm.
 
Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Assembler

public Assembler()
Method Detail

assemble

public static void assemble(File moduleRoot,
                            String moduleName,
                            File srcOutputRoot,
                            String factoryName,
                            Map<String,String> controlTypeToImpl,
                            Map<String,Set<String>> controlTypeToClients,
                            ClassLoader cl)
                     throws ControlAssemblyException,
                            IOException
Executes basic assembly algorithm. For each control type & impl specified, query each impl for the presence of an assembler -- for each assembler present, build the specified ControlAssemblyContext implementation, create an instance of the assembler and execute it.

Parameters:
moduleRoot - dir root of the module
moduleName - name of the module
srcOutputRoot - dir where assemblers can output source files
factoryName - name of the ControlAssemblyContext factory to use
controlTypeToImpl - map of control type name to control impl for all control types to be assembled in this module
controlTypeToClients - map of control type name to a set of control clients (in this module) that use this type
cl - classloader used to load factories and assemblers
Throws:
ControlAssemblyException
IOException