Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Refactor PowerFactory object reference #2041

Merged
merged 7 commits into from
Mar 28, 2022
Merged

Refactor PowerFactory object reference #2041

merged 7 commits into from
Mar 28, 2022

Conversation

geofjamg
Copy link
Member

@geofjamg geofjamg commented Mar 27, 2022

Signed-off-by: Geoffroy Jamgotchian geoffroy.jamgotchian@gmail.com

Please check if the PR fulfills these requirements (please use '[x]' to check the checkboxes, or submit the PR and then click the checkboxes)

  • The commit message follows our guidelines
  • Tests for the changes have been added (for bug fixes / features)
  • Docs have been added / updated (for bug fixes / features)

Does this PR already have an issue describing the problem ? If so, link to this issue using '#XXX' and skip the rest
No

What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)
Design fix

What is the current behavior? (You can also link to an open issue here)
When reading from DGS file, object reference are modeled by an INTEGER64 attribute, which is wrong. There are INTEGER64 attributes that are not object references and there is a dedicated type (see PF C++ API) for that.

What is the new behavior (if this is a feature change)?
A new DataObjectRefhas been added to handled non resolved object references and a global data object index has also been added to allow reference resolving (and also avoid recomputing object index in converter).

Does this PR introduce a breaking change or deprecate an API? If yes, check the following:

  • The Breaking Change or Deprecated label has been added
  • The migration guide has been updated in the github wiki (What changes might users need to make in their application due to this PR?)

Other information:

(if any of the questions/checkboxes don't apply, please delete them entirely)

Signed-off-by: Geoffroy Jamgotchian <geoffroy.jamgotchian@gmail.com>
@geofjamg geofjamg requested a review from marqueslanauja March 27, 2022 20:47
Signed-off-by: Geoffroy Jamgotchian <geoffroy.jamgotchian@gmail.com>
Signed-off-by: Geoffroy Jamgotchian <geoffroy.jamgotchian@gmail.com>
Signed-off-by: Geoffroy Jamgotchian <geoffroy.jamgotchian@gmail.com>
Copy link
Contributor

@marqueslanauja marqueslanauja left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Only two minor things,
The method traverseAndReference of the DataObject class is not used after your refactor and can be deleted.
Maybe, to be clearer, change DataAttributeType.OBJECT to DataAttributeType.OBJECTREF and DataAttributeType.OBJECT_VECTOR to DataAttributeType.OBJECTREF_VECTOR

Signed-off-by: Geoffroy Jamgotchian <geoffroy.jamgotchian@rte-france.com>
@geofjamg
Copy link
Member Author

Only two minor things, The method traverseAndReference of the DataObject class is not used after your refactor and can be deleted. Maybe, to be clearer, change DataAttributeType.OBJECT to DataAttributeType.OBJECTREF and DataAttributeType.OBJECT_VECTOR to DataAttributeType.OBJECTREF_VECTOR

I removed traverseAndReference.
For object type naming, I think we should keep same naming as c++ API.

geofjamg and others added 2 commits March 28, 2022 14:54
Signed-off-by: Geoffroy Jamgotchian <geoffroy.jamgotchian@gmail.com>
@sonarqubecloud
Copy link

Kudos, SonarCloud Quality Gate passed!    Quality Gate passed

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 0 Code Smells

93.7% 93.7% Coverage
0.0% 0.0% Duplication

@geofjamg geofjamg merged commit b7cb109 into main Mar 28, 2022
@geofjamg geofjamg deleted the pf_refactor_obj_ref branch March 28, 2022 16:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants