| 1 | package de.uka.ipd.sdq.codegen.simucontroller.runconfig; |
| 2 | |
| 3 | import de.uka.ipd.sdq.cip.configuration.CompletionConfiguration; |
| 4 | import de.uka.ipd.sdq.cip.configuration.CompletionConfigurationProvider; |
| 5 | import de.uka.ipd.sdq.workflow.pcm.configurations.AbstractCodeGenerationWorkflowRunConfiguration; |
| 6 | |
| 7 | /** |
| 8 | * Base class of workflow configuration objects where the corresponding workflow |
| 9 | * makes completion transformations on PCM models. |
| 10 | * |
| 11 | * See also {@link CompletionConfigurationProvider} and {@link CompletionConfiguration} |
| 12 | * |
| 13 | * @author Thomas Schuischel |
| 14 | * |
| 15 | */ |
| 16 | public abstract class AbstractPCMCompletionWorkflowRunConfiguration extends AbstractCodeGenerationWorkflowRunConfiguration implements CompletionConfigurationProvider, Cloneable { |
| 17 | |
| 18 | CompletionConfiguration completionConfiguration; |
| 19 | |
| 20 | public CompletionConfiguration getCompletionConfiguration() { |
| 21 | return completionConfiguration; |
| 22 | } |
| 23 | |
| 24 | public void setCompletionConfiguration(CompletionConfiguration configuration) { |
| 25 | completionConfiguration = configuration; |
| 26 | } |
| 27 | |
| 28 | @Override |
| 29 | protected Object clone() throws CloneNotSupportedException { |
| 30 | AbstractPCMCompletionWorkflowRunConfiguration config = (AbstractPCMCompletionWorkflowRunConfiguration) super.clone(); |
| 31 | //TODO: clone CompletionConfiguration instead of reassigning the same object |
| 32 | config.completionConfiguration = this.completionConfiguration; |
| 33 | return config; |
| 34 | } |
| 35 | } |