Use of Libraries for sharing functions and actors between projects

OK great, I’ve followed the help and that works
There was a slight difference to the help in that the help indicates a functional exchange should be associated to an exchange item, that didn’t happen for me. But the exchange was present when I created the RPL
Although I do have a question, is there any way to delete all uses of components from a RPL? For example I add an RPL to multiple views and later decide I want to remove them, I can delete the RPL from the project explorer but that does not remove uses of the components. I can do a search for the suffix in the project explorer assuming I added one to find uses, is there another way?
With the library I also wanted to try editing the RPL and syncing that back into the library. The steps I took were:

  1. Make the referenced libraries Access Policy to readAndWrite
  2. Instantiate the RPL from the REC in the library with Compliancy set to INHERITANCY_REUSE
  3. Add new functions and exchanges
  4. Update the REC from the RPL
    This added the new functions and exchanges into the referenced library but caused issues in the source library. The existing views had a java extension and were no longer available and ultimately I got a stack overflow
    Is that behaviour not possible? Is that what is meant by this statement in the usage restrictions?
    “•Perform action that creates a reference between two objects from different models M1, M2 (project or library) where M2 is referencing M1. For instance, if a project is referencing a library, create a generalization from a class in the library to a class in the project. Such a situation can be obtained when moving graphically elements between diagrams. Future version of Capella will provide an automatic check to prevent such a situation.”
    If so then is there a way to be able to sync changes to a rec in a project back into a library? I would like to contain a master library that people reference, iterate the design of the RECs and then through a change process sync any changes back into the master library and then push these to instantiations of that rec in other projects. This would allow us to work efficiently across the organisation
    Thanks
    Stu

Associating an Exchange Item to a Functional Exchange is an option in Capella to better specify what is actually exchanged between two functions.
The only compliance that is fully supported (and enforced) at this stage is the BlackBox one (you can activate the rule in the Preferences: Model Validation / Constraints / Capella / Design / Consistency / RPL Compliance.
You can delete all of the elements belonging to a RPL by displaying the contextual menu on the RPL element in the “REC Catalog” package in the project explorer.
About updating a REC in a library from a RPL in a project, that does not work yet, sorry. This is why you encountered Exceptions. Right now, it is not planned to implement that in a very near future (unless this is funded
)

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