Bug 1061350

Summary: DM discards everything it cannot display to the user
Product: [Retired] JBoss BPMS Platform 6 Reporter: Zuzana Krejčová <zkrejcov>
Component: Data ModelerAssignee: Walter Medvedeo <wmedvede>
Status: CLOSED WONTFIX QA Contact: Zuzana Krejčová <zkrejcov>
Severity: high Docs Contact:
Priority: medium    
Version: unspecifiedCC: kverlaen, lpetrovi, rrajasek
Target Milestone: ER2   
Target Release: 6.0.1   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-03-18 11:33:40 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Zuzana Krejčová 2014-02-04 16:35:05 UTC
Description of problem:
On each change of a class/data object and saving of the model, the Data Modeler re-generates the changed class/data object. If the class contained something that the DM cannot display to the user, these things are ignored and disappear.

Any custom, non-DM-like code is gone once a class is edited in the DM.



Example A:
Developer creates a class using some external tool, pushes it through Git. This class contains a method public void doSomething(). Business user opens the DM and adds an attribute to this class, then saves the data model.
Result: The 'doSomething' is gone from the class.

Example B:
Developer creates an interface or abstract class using some external tool, pushes it through Git. Business user opens the DM, sees this interface or abstract class, but does not know this is not a normal class. So he adds an attribute, then saves the data model.
Result: The interface or abstract class is changed to normal class.

Example C:
Developer creates a class using some external tool, pushes it through Git. This class contains a private attribute called someAttr, but no getter or setter for it. Business user opens the DM and adds an attribute to this class, then saves the data model.
Result: The 'someAttr' attribute is gone from the class.

Example D:
Developer creates a class using some external tool, pushes it through Git. This class contains a public int attribute called someAttr, but no getter or setter for it. Business user opens the DM and adds an attribute to this class, then saves the data model.
Result: The 'someAttr' attribute is changed to Integer, getter and setter are generated.

Example E:
Developer edits a class using some external tool, pushes it through Git. The change done is just an added System.out.println("debug msg"); added to the default non-parametric constructor. Business user opens the DM and adds an attribute to this class, then saves the data model.
Result: The debug print is gone.



Version-Release number of selected component (if applicable):
BPMS 6.0 CR2


Steps to Reproduce:
See examples in the description.

Comment 1 Walter Medvedeo 2014-02-07 10:17:40 UTC
It was defined that if a .java file is created or modified by an external editor, the datamodeler will show this class in read only model.
See https://bugzilla.redhat.com/show_bug.cgi?id=1041760