EMMA Coverage Report (generated Sun Feb 05 10:43:15 CET 2012)
[all classes][de.uka.ipd.sdq.codegen.ejb]

COVERAGE SUMMARY FOR SOURCE FILE [EJBCodeGenerationJob.java]

nameclass, %method, %block, %line, %
EJBCodeGenerationJob.java0%   (0/1)0%   (0/3)0%   (0/60)0%   (0/15)

COVERAGE BREAKDOWN BY CLASS AND METHOD

nameclass, %method, %block, %line, %
     
class EJBCodeGenerationJob0%   (0/1)0%   (0/3)0%   (0/60)0%   (0/15)
EJBCodeGenerationJob (EjbCodeGenerationConfiguration): void 0%   (0/1)0%   (0/5)0%   (0/2)
EJBCodeGenerationJob (EjbCodeGenerationConfiguration, IDebugListener): void 0%   (0/1)0%   (0/6)0%   (0/2)
EJBCodeGenerationJob (EjbCodeGenerationConfiguration, IDebugListener, boolean... 0%   (0/1)0%   (0/49)0%   (0/11)

1package de.uka.ipd.sdq.codegen.ejb;
2 
3import org.eclipse.core.runtime.CoreException;
4 
5import de.uka.ipd.sdq.codegen.simucontroller.debug.IDebugListener;
6import de.uka.ipd.sdq.codegen.simucontroller.workflow.jobs.CompilePluginCodeJob;
7import de.uka.ipd.sdq.codegen.simucontroller.workflow.jobs.CreateProtoComMetaDataFilesJob;
8import de.uka.ipd.sdq.codegen.simucontroller.workflow.jobs.TransformPCMToCodeJob;
9import de.uka.ipd.sdq.workflow.IBlackboardInteractingJob;
10import de.uka.ipd.sdq.workflow.OrderPreservingBlackboardCompositeJob;
11import de.uka.ipd.sdq.workflow.mdsd.blackboard.MDSDBlackboard;
12import de.uka.ipd.sdq.workflow.pcm.configurations.AbstractCodeGenerationWorkflowRunConfiguration;
13import de.uka.ipd.sdq.workflow.pcm.jobs.CreatePluginProjectJob;
14import de.uka.ipd.sdq.workflow.pcm.jobs.LoadPCMModelsIntoBlackboardJob;
15import de.uka.ipd.sdq.workflow.pcm.jobs.ValidatePCMModelsJob;
16 
17/**
18 * Main job for the SDQ workflow engine which will run a SimuComSimulation
19 * @author Steffen
20 */
21public class EJBCodeGenerationJob 
22extends OrderPreservingBlackboardCompositeJob<MDSDBlackboard>
23implements IBlackboardInteractingJob<MDSDBlackboard> {
24 
25        public EJBCodeGenerationJob(EjbCodeGenerationConfiguration configuration, IDebugListener listener) throws CoreException {
26                this(configuration, listener, true);
27                
28        }
29 
30        public EJBCodeGenerationJob(EjbCodeGenerationConfiguration configuration) throws CoreException {
31                this(configuration,null);
32        }
33        
34        public EJBCodeGenerationJob(EjbCodeGenerationConfiguration configuration, IDebugListener listener, boolean loadModels) throws CoreException {
35                super();
36                
37                if (listener == null && configuration.isDebug())
38                        throw new IllegalArgumentException("Debug listener has to be non-null for debug runs");
39                // 1. Load PCM Models into memory                
40                if (loadModels == true) {
41                        this.addJob(new LoadPCMModelsIntoBlackboardJob(configuration));
42                }
43                //this.addJob(new LoadMiddlewareConfigurationIntoBlackboardJob(configuration));
44                
45                // 2. Validate PCM Models
46                this.addJob(new ValidatePCMModelsJob(configuration));
47                
48                // 3. Create new Eclipse plugin project
49                // We do NOT perform this step anymore. It causes PCM to delete and generate the
50                // plugin project twice! [zolynski]
51                //this.addJob(new CreatePluginProjectJob(configuration));
52 
53                // 4. Generate the plugin's code using oAW
54                this.addJob(new TransformPCMToCodeJob(configuration));
55 
56                if (configuration.getCodeGenerationAdvice() == AbstractCodeGenerationWorkflowRunConfiguration.CodeGenerationAdvice.PROTO) {
57                        this.addJob(new CreateProtoComMetaDataFilesJob(configuration));                        
58                } 
59 
60                // 5. Compile the plugin (otherwise the source files are not properly found)
61                this.addJob(new CompilePluginCodeJob(configuration));
62 
63        }
64}

[all classes][de.uka.ipd.sdq.codegen.ejb]
EMMA 2.0.9414 (unsupported private build) (C) Vladimir Roubtsov