Commit Graph
5192 Commits
Author SHA1 Message Date
thesmallstarandMichael Vorburger ⛑️ beee2e5330 Fixed: Checkstyle Violations 2020-04-07 23:46:20 +02:00
Michael Vorburger 09d0cfaa52 Remove AbstractPersistableCustom's PK parameterization
Because both are pointless, as the PK @Id is hard-coded to Long anyway,
and the U is (rightfully) fixed to always be an AppUser here.
2020-04-07 23:46:20 +02:00
Michael Vorburger dccea1d65e add @Transient to AbstractPersistableCustom isNew()
see https://jira.spring.io/browse/DATAJPA-622

Even though we don't use Hibernate, copying this annotation from the
original class in Spring Data seems prudent - just in case.  It should
not cause any harm or side effects on OpenJPA.
2020-04-07 23:46:20 +02:00
Michael Vorburger ae4117052b add missing doc to AbstractPersistableCustom & AbstractAuditableCustom 2020-04-07 23:46:20 +02:00
NatashaandMichael Vorburger ⛑️ d0c8c6a012 FINERACT-538 populated updated and created address 2020-04-07 23:15:25 +02:00
NatashaandMichael Vorburger ⛑️ eb8a3572ae FINERACT-122 added clientId, officeId, and groupId. 2020-04-07 23:11:48 +02:00
Manthan SurkarandMichael Vorburger ⛑️ 110684bf30 Added: IntelliJ Checkstyle plugin tip to README 2020-04-07 10:08:03 +02:00
Michael Vorburger ⛑️andGitHub a0a82a0748 add link to Release Process page on Wiki to README 2020-04-06 12:03:11 +02:00
Manthan SurkarandGitHub 402c41dd95 Add Jacoco to measure code coverage (FINERACT-725 / PR #742)
* Added Code Coverage Section in Readme
2020-04-01 23:29:15 +02:00
Michael Vorburger ⛑️ 4ccbcba3a6 add Eclipse Checkstyle plugin tip to README 2020-03-29 13:13:29 +02:00
Michael Vorburger 53e8658d74 apply Hikari's recommended MySQL Configuration (FINERACT-796)
from https://github.com/brettwooldridge/HikariCP/wiki/MySQL-Configuration
and https://github.com/brettwooldridge/HikariCP/wiki/JDBC-Logging#mysql-connectorj
2020-03-28 17:58:39 +01:00
Michael Vorburger 5f2ba51f5a Minor clean ups in DataSource Connection Pool related code 2020-03-28 17:58:39 +01:00
Michael Vorburger 99794914a5 Fix wrong @OneToOne to @ManyToOne in AbstractAuditableCustom 2020-03-28 15:07:28 +01:00
xurrorandMichael Vorburger ⛑️ 3475c0cfb7 FINERACT-796
Use Hikari instead of Tomcat Connection Pool
 - Created hikari connection pool bean
 - Configured connection parameters to match hikari
 - Removed tomcat-jdbc and dbcp
 - Remove unused classes
 - Add Hikari to logback
 - update hikaridatasource bean

closes https://issues.apache.org/jira/browse/FINERACT-796

remove hikaricp import from gradle files

more specific bean config

- Set up datasource properties
- Cleanup unused classes
- Add hikari to logback
2020-03-28 15:06:34 +01:00
percyashuandMichael Vorburger ⛑️ 2e620b4de8 FINERACT-823 Gradle modernizer fixing violations 2020-03-23 00:54:00 +01:00
percyashuandMichael Vorburger ⛑️ ef5bba4d52 Minor Typo fix 2020-03-17 20:53:02 +01:00
thesmallstarandMichael Vorburger ⛑️ 3f11dc51a9 Fix: Duplicate migration version 2020-03-15 11:05:30 +01:00
Michael Vorburger b1eb62f221 fix broken build due to small logging error detected by SpotBugs
significant reformatting due to Eclipse auto-save action (someone really
needs to finish the Checkstyle uniform formatting)

see https://github.com/apache/fineract/pull/592
2020-03-15 11:05:30 +01:00
Angel CajasandMichael Vorburger ⛑️ b9b265b915 Fineract-614
Changes to comply with Checkstyle rules
2020-03-13 17:15:25 +01:00
Angel CajasandMichael Vorburger ⛑️ 8df44af628 Fineract-614:
Updating Global Configurations
Fixing some rebase conflicts
Change to imports on IntegrationTest for CheckStyle
2020-03-13 17:15:25 +01:00
Angel CajasandMichael Vorburger ⛑️ 15a4a7695a Fineract-614:
Updating Global Configurations
Fixing some rebase conflicts
2020-03-13 17:15:25 +01:00
Angel CajasandMichael Vorburger ⛑️ 3a1a90d15e Fineract-614: Renaming SQL file for a higher version number 2020-03-13 17:15:25 +01:00
Angel CajasandMichael Vorburger ⛑️ e2f5c95034 Fixing some code to be compatible with Spring update 2020-03-13 17:15:25 +01:00
Angel CajasandMichael Vorburger ⛑️ c342f5b43d FINERACT-737: Updated Api Docs to include loan charges paid by
FINERACT-736: Api Docs were updated to include rates documentation
FINERACT-735: Integration test were created for rates creation, retrieval and update

Missing permission READ_RATE
2020-03-13 17:15:25 +01:00
Angel CajasandMichael Vorburger ⛑️ a7d4c83e92 A new rates module was added to define new rates that can be used to set min and max nominal interest rate, when a new loan account is created they can be used to determine which rates may be applicable for the loan account. 2020-03-13 17:15:25 +01:00
xurrorandMichael Vorburger ⛑️ f484f884a0 FINERACT-696
add spotbug bug-pattern plugin.

Apply suggestions from code review

closes https://issues.apache.org/jira/browse/FINERACT-696

Co-Authored-By: Michael Vorburger ⛑️ <mike@vorburger.ch>
2020-03-13 09:27:34 +01:00
thesmallstarandMichael Vorburger ⛑️ de329e2489 FINERACT-83 Made interestIncome variable null-safe 2020-03-12 12:57:18 +01:00
thesmallstarandMichael Vorburger ⛑️ 93d1716630 Added: SQL builder toString function 2020-03-12 12:54:46 +01:00
Michael Vorburger 1b1e80b6b1 Log errors from cron jobs individually and with cause (FINERACT-858)
instead of current huge JobExecutionException message (without cause)
2020-03-10 17:10:01 +01:00
Michael Vorburger ⛑️andGitHub 0c9273a11b throw exception with details in InteropServiceImpl (FINERACT-860) (#728)
instead of the NoSuchElementException from Optional.get(), we're now
throwing an UnsupportedOperationException which includes the details of
the missing object.  (This kind of detailed exception was already thrown
in two existing places in the same code after a null check, but it never
reached there, because the Optional.get() failed earlier.  Another
option would have been to return null for an absent Optional, but this
is better.)

The other unrelated changes are automatic clean up actions (in Eclipse).
2020-03-10 12:29:07 +01:00
thesmallstarandMichael Vorburger ⛑️ a34742b59a Made SQL builder ColumnName regex more general 2020-03-10 11:36:49 +01:00
Michael Vorburger 753554e281 Fix audit trails filter (FINERACT-808)
As per the great analysis by Manthan Surkar (@thesmallstar) in the
original PR https://github.com/apache/fineract/pull/723, the cause of
the FINERACT-808 bug was that "the backend would treat "UPDATE" and
similar strings as SQL injection".

The root cause of that was that (IMHO..) how Fineract does SQL injection
is more of a workaround (blacklisting some keywords and some heuristic
checks) then how this really should be done (by using JDBC Prepared
statements with arguments for all external data, instead inlined SQL).

This also lays the foundation for more like this in FINERACT-854.
2020-03-10 11:36:49 +01:00
xurrorandMichael Vorburger ⛑️ a7ebef4781 FINERACT-807
change mifosplatform-tenants and mifostenant-default to fineract_tenants
 and fineract_default respectively

closes https://issues.apache.org/jira/projects/FINERACT/issues/FINERACT-807?filter=allopenissues
2020-03-08 14:16:05 +01:00
Awasum YannickandMichael Vorburger ⛑️ 51f23613ad Fix checkstyle problem in UserAdministrationTest 2020-03-05 15:19:38 +01:00
Awasum YannickandGitHub d4002f22a8 FINERACT-802-restrict-client-to-have-single-self-service-user (#664) 2020-03-05 09:40:13 +01:00
Manthan SurkarandGitHub 867579d321 FINERACT-557: Readme Improvement (#718) 2020-03-02 21:01:01 +01:00
Manthan SurkarandGitHub 49c3450bed FINERACT-80: Include Group loans in resultset (#717) 2020-03-02 20:57:35 +01:00
228ec22a60 Allow customizing Tenants DB JDBC uid/pwd/driver (FINERACT-806) (#713)
* Allow customizing Tenants DB JDBC uid/pwd/driver (FINERACT-806)

Added Java system properties for username and password to docker-compose

Modified sever.xml to get username and password

* Fixes for customizing Tenants DB JDBC uid/pwd/driver (FINERACT-806)

* Use random MYSQL_ROOT_PASSWORD in docker-compose.yml (FINERACT-806)

This provides future non-regression testing that the the customized
MySQL password is actually really used, and it doesn't just work because
"mysql" is still hard-coded anywhere.

Co-authored-by: Yemdjih Kaze Nasser <kaze.nasser@outlook.com>
2020-02-09 19:36:58 +01:00
Michael Vorburger ⛑️andGitHub c6b2c09032 COPY only the minimal required files to build in the Dockerfile (#712)
This speeds up e.g. "podman-compose build" for me from 5m to 4m.

BEFORE:
real	5m29.884s
user	4m17.643s
sys	    2m57.567s

AFTER:
real	4m19.458s
user	3m13.815s
sys	    2m 3.095s
2020-02-09 19:35:27 +01:00
xurrorandMichael Vorburger ⛑️ 78eb402206 FINERACT-840
Update API docs and demo app URL
2020-02-06 18:26:47 -08:00
Tomer MosheandGitHub 45978337b2 Fixed openjpa.persistence.InvalidStateException (#711)
* Update AbstractPersistableCustom.java

Made AbstractPersistableCustom serializable to solve org.apache.openjpa.persistence.InvalidStateException

* Update AbstractPersistableCustom.java

removed space
2020-02-06 08:20:42 +01:00
percyashuandMichael Vorburger ⛑️ aadc2a006c FINERACT-775 Clean up Util 2020-02-02 11:36:53 +01:00
Yemdjih Kaze NasserandGitHub 7919a35a6b Update links for demo app and API documentation (#705) 2020-01-31 16:31:55 +01:00
percyashuandMichael Vorburger ⛑️ 7d99d783d5 FINERACT-776 Fix TopicTest failure 2020-01-30 20:24:40 +01:00
Michael Vorburger ⛑️andAwasum Yannick 28db242884 Activate and Enforce new Checkstyle check related to import statement order (FINERACT-821) (#704)
* Minor manually done fix up of fineractdev-eclipse-preferences.epf file

This in theory should not change anything about the conventions,
it's just a first manual clean up of this very old file here.

The few extra new lines are what I found when exporting Preferences.

Related to https://issues.apache.org/jira/browse/FINERACT-821

* fineractdev-eclipse-preferences.epf imported and re-exported in Eclipse.

This in theory should not change anything about the conventions, as
presumably Eclipse during an Import and re-Export of an EPF just adds
new settings, and perhaps removes old settings.  I've not actually made
any manual changes in Preferences in this step.

Related to https://issues.apache.org/jira/browse/FINERACT-821

* fineractdev-eclipse-preferences.epf "import" in line with Checkstyle

The non-import related Code Formatter settings may need further tuning;
this will be done in future changes; the focus in this round is on
import.

Related to https://issues.apache.org/jira/browse/FINERACT-821

* Use Eclipse's Source > Organize Import to re-order all import statements

This uses the fineractdev-eclipse-preferences.epf from the previous
commit, which just so happens ;) to exactly match the expected import
rules which the next commit is going to enforce using Checkstyle.

This is of course not specific to only Eclipse per se; other IDEs can
be similarly configured to match these coding conventions; I just happen
to have used Eclipse.

Related to https://issues.apache.org/jira/browse/FINERACT-821

* Activate and Enforce all Checkstyle import related new checks

and update the README to explain Checkstyle, and the availability of the
Eclipse Preferences configuration file which matches the import
code format conventions which are now enforced.

Contributions for a similar preferences file for other IDEs welcome! ;)

Related to https://issues.apache.org/jira/browse/FINERACT-821
2020-01-28 00:28:11 +01:00
Michael Vorburger ⛑️andAwasum Yannick 3a17da44df Activate and Enforce Checkstyle EqualsHashCode check. (#703)
Thanks to prior work for SpotBugs, this passes without requiring any
code adjustments.  (Fineract had a nubmer of problems in this space
before the SpotBugs work.)

Enabling this helps to ensure non-regression so that no new equals() and
hashCode() related bugs creep in.  (This does overlap a little bit with
SpotBugs, but the build time overhead to run the extra check is
completely negligible, so it seems worth having this.  If only just in
case SpotBugs for whatever reason in the future would get deactivated
again.)
2020-01-27 22:02:41 +01:00
Michael Vorburger ⛑️andAwasum Yannick 14175a1854 Minor: Remove comment in build.gradle re. springDataJpaVersion (#702)
This has been removed in a20f76d686,
and it's confusing to look for what that means, e.g. while code
reviewing proposed "bump" changes to the used versions of
spring.gradle:dependency-management-plugin and
springframework.boot:spring-boot-gradle-plugin.
2020-01-27 22:00:28 +01:00
Awasum YannickandMichael Vorburger ⛑️ 66ae79bbe7 Upgrade Spring Boot from 2.1.7 to 2.2.4 2020-01-27 21:05:29 +01:00
Angel CajasandMichael Vorburger ⛑️ 5c19ed9385 FINERACT-820: Add a new condition so the Java Calendar Sunday value matches witch Fineract 2020-01-27 08:09:54 +01:00
Shaik Nazeer Hussain 1848056e6f Revert "FINERACT-820 - Fixing Integration Test which fails on Sundays"
This reverts commit e9e0bbc930.
2020-01-26 17:43:15 +05:30