Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 521068

Summary: It should be possible to inherit from SessionFactoryImpl
Product: [Modeling] Sirius Reporter: Maxime Porhel <maxime.porhel>
Component: CoreAssignee: Maxime Porhel <maxime.porhel>
Status: CLOSED FIXED QA Contact: Julien Dupont <julien.dupont>
Severity: enhancement    
Priority: P3 CC: julien.dupont, pierre-charles.david
Version: 5.0.0Keywords: triaged
Target Milestone: 5.1.0   
Hardware: All   
OS: All   
See Also: https://git.eclipse.org/r/103210
https://git.eclipse.org/c/sirius/org.eclipse.sirius.git/commit/?id=f0c22e45a393a6a9cc90a8202bcbdfb1c2057a3a
https://git.eclipse.org/r/104422
https://git.eclipse.org/c/sirius/org.eclipse.sirius.git/commit/?id=13e1e7ba849d171b929cfb8a15a53a2e047cea75
Whiteboard:

Description Maxime Porhel CLA 2017-08-17 10:42:41 EDT
SessionFactoryImpl is the default implementation of the SessionFactory interface. It is also responsible to init the SessionFactory.INSTANCE singleton. 

SessionFactoryImpl is currently a final class and session factory providers default way to provide their own factory is to copy the class and adapt it, then they miss the evolutions of the default factory, which might be acceptable for an internal class. 

I propose as a first step to update the factory and to remove the final modifier in order to allow other projects like Capella to begin to inherit form it instead of copying it. 
We might in later version move it from internal to api packages.
Comment 1 Maxime Porhel CLA 2017-08-18 05:31:13 EDT
See also https://git.polarsys.org/r/#/c/4903/ on Capella side which validates this enhancement.
Comment 3 Pierre-Charles David CLA 2017-08-22 04:02:14 EDT
Closing, as I believe we're done with f0c22e45a393a6a9cc90a8202bcbdfb1c2057a3a. @maxime, feel free to reopen if there are more things to do (and mention which ones).
Comment 4 Eclipse Genie CLA 2017-09-06 04:54:51 EDT
New Gerrit change created: https://git.eclipse.org/r/104422
Comment 6 Pierre-Charles David CLA 2017-11-08 03:36:51 EST
Available in Sirius 5.1.0, see https://wiki.eclipse.org/Sirius/5.1.0.