-
Notifications
You must be signed in to change notification settings - Fork 1.7k
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
FINERACT-2081: introduce builder pattern to Note entity instantiation. #4071
base: develop
Are you sure you want to change the base?
FINERACT-2081: introduce builder pattern to Note entity instantiation. #4071
Conversation
fineract-provider/src/main/java/org/apache/fineract/portfolio/note/domain/Note.java
Outdated
Show resolved
Hide resolved
public Map<String, Object> update(final JsonCommand command, Note noteForUpdate) { | ||
final Map<String, Object> actualChanges = new LinkedHashMap<>(7); | ||
final String newNote = command.stringValueOfParameterNamed("note"); | ||
if (!noteForUpdate.getNote().equals(newNote)) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
are you sure the equals() will catch any content changes inside a Note? We might need a unit test for this logic as well.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is the same old logic, just moved from the entity to the service layer for better separation of concerns.
The equals()
method will work as will correctly identify changes in the note content, as it compares the entire string.
33c7324
to
6960c09
Compare
- Removed all redundant static instantiation methods and constructors from `Note.java`. - Used Builder pattern to make it easy to instantiate the Note object. - Changed all instantiation places to use the new implementation.
6960c09
to
acf898e
Compare
Are there any required updates? |
@Zeyad2003 I'm fine, but I recall @vidakovic also had concerns with the nature of the changes. Let's get him review your work as well before we proceed here. |
This pull request seems to be stale. Are you still planning to work on it? We will automatically close it in 30 days. |
Description
Note.java
.Describe the changes made and why they were made.
Ignore if these details are present on the associated Apache Fineract JIRA ticket.
Checklist
Please make sure these boxes are checked before submitting your pull request - thanks!
Write the commit message as per https://github.com/apache/fineract/#pull-requests
Acknowledge that we will not review PRs that are not passing the build ("green") - it is your responsibility to get a proposed PR to pass the build, not primarily the project's maintainers.
Create/update unit or integration tests for verifying the changes made.
Follow coding conventions at https://cwiki.apache.org/confluence/display/FINERACT/Coding+Conventions.
Add required Swagger annotation and update API documentation at fineract-provider/src/main/resources/static/legacy-docs/apiLive.htm with details of any API changes
Submission is not a "code dump". (Large changes can be made "in repository" via a branch. Ask on the developer mailing list for guidance, if required.)
FYI our guidelines for code reviews are at https://cwiki.apache.org/confluence/display/FINERACT/Code+Review+Guide.