"Interfaces from allocated functions" Accelerator

Hi, I just found out that there is this accelerator that will generate interfaces from allocated functions to a component. It is great and incremental which means I can call it when I change the functions and exchange items allocated to them.

What I’ve found out is that it only adds the new exchange items to the existing interfaces, if, for example, I deallocate an exchange item to a functional exchange, the exchange item is not removed from the interface. What I’d like to ask is if this is the expected behavior and if there is any switch to change it. (I know I can always delete the interface and generate it again but I’d have to know there is such difference and sometimes I won’t know).

Step-by-step example:

create Logical Components LC1 and LC2,
create functions F1 and F2 allocated to LC1 and LC2 respectively,
create component exchange CE1 from LC1 to LC2,
create functional exchange FE1 from F1 to F2,
allocate FE1 to CE1,
create exchange items EI1 and EI2,
allocate EI1 and EI2 to FE1,
click on LC1 and launch the accelerator.

Result: Interface “CE1” created with EI1 and EI2.

deallocate EI1 from FE1
click on LC1 and launch the accelerator again.

Expected result: Interface “CE1” updated to reflect only EI2 is used on the exchanges.
Obtained result: Interface “CE1” remains with the same exchange items EI1 and EI2.

I think validation could help.
Validation rules should check that component interfaces and ExchangeItems of functions exchanges are coincide.

I don’t think that it’s the correct behaviour for accelerator to remove ExchangeItem from interface.
If I’ve added it by hand before using on FE?

I don’t know it there is such a rule. Need to try.
But if there is no it should be created.

That’s a good point, how could the validation rule and the accelerator code check if the exchange item was added by hand from the user or built with the accelerator? Maybe there are provisions or links, I don’t know.

I’ll check if there is such a validation rule, maybe that could help support this workflow.

Thanks for the answer

Copyright © Eclipse Capella, the Eclipse Capella logo, Eclipse and the Eclipse logo are Trademarks of The Eclipse Foundation.