Community
Participate
Working Groups
Code is duplicated between the InternalTransformationExecutor and CstTransformation classes, as both have the ability to cache a QVTo transformation once it has been loaded (including the load diagnostics). This code duplication is unnecessary as the InternalTransformationExecutor refers directly to a CstTransformation and can therefore delegate all caching to it. In fact, the duplication stems from a flawed refactoring in bug 478006, where InternalTransformationExecutor and CstTransformation were separated into distinct classes.
Patch pushed to cgerking/582828. In particular, it gets rid of the private doLoad(...) method of InternalTransformationExecutor as it is no longer needed. Jenkins build #210 succeeded.
Releng: /org.eclipse.m2m.qvt.oml/META-INF/MANIFEST.MF needs to advance to 3.10.9 Weird: org.eclipse.m2m.qvt.oml is set to Unix new-line, but CstTransformation.java was mixed Unix/Windows but after your edit is uniformly Windows. When I try with 2023-03 and 2023-12 I get more variations. My OCL Java source files seem to stay consistently Unix. The changes seem to involve probably trivial changes such as monitor/SubMonitor and field/return. If the tests pass I guess they're ok.
(In reply to Ed Willink from comment #2) > Weird: org.eclipse.m2m.qvt.oml is set to Unix new-line, but > CstTransformation.java was mixed Unix/Windows but after your edit is > uniformly Windows. Converted line delimiters of CstTransformation to Unix in commit 6e90b0168ee2846e90cb414c4dbd10710534c9e5. > Releng: /org.eclipse.m2m.qvt.oml/META-INF/MANIFEST.MF needs to advance to > 3.10.9 Advanced in commit bbb9bda03b6ef06c92ce6053887a920d8b0a4e33. > The changes seem to involve probably trivial changes such as > monitor/SubMonitor and field/return. If the tests pass I guess they're ok. Right, the SubMonitor encapsulates some null checks on the IProgressMonitor passed in. Do you mean that fields like fLoadDiagnostic are replaced by local variables? This is a direct consequence of removing the caching – there is still a corresponding fLoadDiagnostic in CstTransformation. And since the executor refers to the CstTransformation using its fTransformation field, there is no need to duplicate the fLoadDiagnostic.