org.objectweb.fractal.cecilia.composite.c
Class CompilationVisitor

java.lang.Object
  extended by org.objectweb.fractal.task.core.AbstractTaskFactoryUser
      extended by org.objectweb.fractal.cecilia.primitive.thinkMC.source.CompilationVisitor
          extended by org.objectweb.fractal.cecilia.composite.c.CompilationVisitor
All Implemented Interfaces:
ComponentVisitor, Visitor<org.objectweb.fractal.adl.components.ComponentContainer>, org.objectweb.fractal.api.control.BindingController

public class CompilationVisitor
extends CompilationVisitor


Nested Class Summary
static class CompilationVisitor.CompositeCompiledFileAggregator
          Aggregate a file provided by the given composite component and its sub components.
 
Nested classes/interfaces inherited from class org.objectweb.fractal.cecilia.primitive.thinkMC.source.CompilationVisitor
CompilationVisitor.AssemblyFileProvider, CompilationVisitor.FileProviderAggregatorTask
 
Field Summary
static java.lang.String COMPILATION_COMPOSITION
          The name of the task composition schema used by this visitor.
 
Fields inherited from class org.objectweb.fractal.cecilia.primitive.thinkMC.source.CompilationVisitor
COMPILATION_TASK_FACTORY_ITF_NAME, compilationTaskFactoryItf
 
Fields inherited from class org.objectweb.fractal.task.core.AbstractTaskFactoryUser
TASK_FACTORY_ITF_NAME, taskFactoryItf
 
Constructor Summary
CompilationVisitor()
           
 
Method Summary
protected  org.objectweb.fractal.api.Component createComponentCompilationTask(org.objectweb.fractal.adl.components.ComponentContainer container, java.util.Map<java.lang.Object,java.lang.Object> context)
           
protected  org.objectweb.fractal.api.Component createCompositeCompiledFileAggregatorTask(org.objectweb.fractal.adl.components.ComponentContainer container)
           
 org.objectweb.fractal.api.Component visit(java.util.List<org.objectweb.fractal.adl.Node> path, org.objectweb.fractal.adl.components.ComponentContainer container, java.util.Map<java.lang.Object,java.lang.Object> context)
          Visits ComponentContainer nodes and creates a compilation tasks.
 
Methods inherited from class org.objectweb.fractal.cecilia.primitive.thinkMC.source.CompilationVisitor
bindFc, createArchiveTask, createAssemblyFileProvider, createCompilationComposition, createComponentCompilationTask, createFileProviderAggregatorTask, createModuleCompilationTask, listFc, lookupFc, unbindFc
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

COMPILATION_COMPOSITION

public static final java.lang.String COMPILATION_COMPOSITION
The name of the task composition schema used by this visitor.

See Also:
Constant Field Values
Constructor Detail

CompilationVisitor

public CompilationVisitor()
Method Detail

visit

public org.objectweb.fractal.api.Component visit(java.util.List<org.objectweb.fractal.adl.Node> path,
                                                 org.objectweb.fractal.adl.components.ComponentContainer container,
                                                 java.util.Map<java.lang.Object,java.lang.Object> context)
                                          throws org.objectweb.fractal.adl.ADLException,
                                                 TaskException
Visits ComponentContainer nodes and creates a compilation tasks.

Specified by:
visit in interface Visitor<org.objectweb.fractal.adl.components.ComponentContainer>
Overrides:
visit in class CompilationVisitor
Parameters:
path - a list containing all the parent nodes of the visited node stating from the root of the AST.
container - the AST Node to be visited.
context - additional parameters.
Returns:
a task component that models the processing to be done on this node.
Throws:
ADLException - if something wrong is found in the AST.
TaskException - if something wrong happens during the instantiation of the task component.

createComponentCompilationTask

protected org.objectweb.fractal.api.Component createComponentCompilationTask(org.objectweb.fractal.adl.components.ComponentContainer container,
                                                                             java.util.Map<java.lang.Object,java.lang.Object> context)
                                                                      throws TaskException
Throws:
TaskException

createCompositeCompiledFileAggregatorTask

protected org.objectweb.fractal.api.Component createCompositeCompiledFileAggregatorTask(org.objectweb.fractal.adl.components.ComponentContainer container)
                                                                                 throws TaskException
Throws:
TaskException


Copyright © 2007-2009 ObjectWeb Consortium. All Rights Reserved.