1 | package de.uka.ipd.sdq.pcm.transformations.builder.resourceconsumer; |
2 | |
3 | import de.uka.ipd.sdq.pcm.repository.OperationInterface; |
4 | import de.uka.ipd.sdq.pcm.transformations.builder.abstractbuilder.BasicComponentBuilder; |
5 | import de.uka.ipd.sdq.pcm.transformations.builder.seff.DelegatorComponentSeffBuilder; |
6 | import de.uka.ipd.sdq.pcm.transformations.builder.util.PCMAndCompletionModelHolder; |
7 | |
8 | /** |
9 | * Generates a BasicComponent which determines and loads the underlying network resource with the message's size of the message to transmit. |
10 | * Respects both requesting service and returning from service. |
11 | * |
12 | * @author Steffen |
13 | * |
14 | */ |
15 | public class LocalCommunicationComponentBuilder extends BasicComponentBuilder { |
16 | |
17 | /** |
18 | * Constructor of the network load simulator component |
19 | * @param models Container for the PCM model instance to modify |
20 | * @param interf Interface of the component, used to delegate the method calls to its target |
21 | * @param linkingRes The linking resource on which the load is created |
22 | */ |
23 | public LocalCommunicationComponentBuilder( |
24 | PCMAndCompletionModelHolder models, |
25 | OperationInterface interf) { |
26 | super(models, interf, null, "LocalCommunicationComponent"); |
27 | } |
28 | |
29 | /** |
30 | * Returns a SEFF builder which adds a network demand depending on the parameters passed |
31 | */ |
32 | @Override |
33 | protected DelegatorComponentSeffBuilder getSeffBuilder() { |
34 | DelegatorComponentSeffBuilder builder = new DelegatorComponentSeffBuilder(getOperationProvidedRole(),getOperationRequiredRole()); |
35 | return builder; |
36 | } |
37 | } |