* update yaml frontmatter format
* update abstract document
* update abstract factory
* use the new pattern template
* acyclic visitor seo
* adapter seo
* ambassador seo
* acl seo
* aaa seo
* async method invocation seo
* balking seo
* bridge seo
* builder seo
* business delegate and bytecode seo
* caching seo
* callback seo
* chain seo
* update headings
* circuit breaker seo
* client session + collecting parameter seo
* collection pipeline seo
* combinator SEO
* command seo
* cqrs seo
* commander seo
* component seo
* composite seo
* composite entity seo
* composite view seo
* context object seo
* converter seo
* crtp seo
* currying seo
* dao seo
* data bus seo
* data locality seo
* data mapper seo
* dto seo
* decorator seo
* delegation seo
* di seo
* dirty flag seo
* domain model seo
* double buffer seo
* double checked locking seo
* double dispatch seo
* dynamic proxy seo
* event aggregator seo
* event-based asynchronous seo
* eda seo
* event queue seo
* event sourcing seo
* execute around seo
* extension objects seo
* facade seo
* factory seo
* factory kit seo
* factory method seo
* fanout/fanin seo
* feature toggle seo
* filterer seo
* fluent interface seo
* flux seo
* flyweight seo
* front controller seo
* function composition seo
* game loop seo
* gateway seo
* guarded suspension seo
* half-sync/half-async seo
* health check seo
* hexagonal seo
* identity map seo
* intercepting filter seo
* interpreter seo
* iterator seo
* layers seo
* lazy loading seo
* leader election seo
* leader/followers seo
* lockable object seo
* rename and add seo for marker interface
* master-worker seo
* mediator seo
* memento seo
* metadata mapping seo
* microservice aggregator seo
* api gw seo
* microservices log aggregration seo
* mvc seo
* mvi seo
* mvp seo
* mvvm seo
* monad seo
* monitor seo
* monostate seo
* multiton seo
* mute idiom seo
* naked objects & notification seo
* null object seo
* object mother seo
* object pool seo
* observer seo
* optimistic locking seo
* page controller seo
* page object seo
* parameter object seo
* partial response seo
* pipeline seo
* poison pill seo
* presentation model seo
* private class data seo
* producer-consumer seo
* promise seo
* property seo
* prototype seo
* proxy seo
* queue-based load leveling seo
* reactor seo
* registry seo
* repository seo
* RAII seo
* retry seo
* role object seo
* saga seo
* separated interface seo
* serialized entity seo
* serialized lob seo
* servant seo
* server session seo
* service layer seo
* service locator seo
* service to worker seo
* sharding seo
* single table inheritance seo
* singleton seo
* spatial partition seo
* special case seo
* specification seo
* state seo
* step builder seo
* strangler seo
* strategy seo
* subclass sandbox seo
* table module seo
* template method seo
* throttling seo
* tolerant reader seo
* trampoline seo
* transaction script seo
* twin seo
* type object seo
* unit of work seo
* update method seo
* value object seo
* version number seo
* virtual proxy seo
* visitor seo
* seo enhancements
* seo improvements
* SEO enhancements
* SEO improvements
* SEO additions
* SEO improvements
* more SEO improvements
* rename hexagonal + SEO improvements
* SEO improvements
* more SEO stuff
* SEO improvements
* SEO optimizations
* SEO enhancements
* enchance SEO
* improve SEO
* SEO improvements
* update headers
* Remove unused member which was also causing a false positive sonar issue.
Fixes sonar issue https://sonarcloud.io/project/issues?open=AY3gHwu5DIZTZkppqVEG&id=iluwatar_java-design-patterns
* Fixes sonar issue https://sonarcloud.io/project/issues?open=AXK0OzDA-CiGJS70dLki&id=iluwatar_java-design-patterns
related to "Refactor the code of the lambda to not have multiple invocations throwing the same checked exception."
Also, updated the code to use Instant and Duration to deal with time instead of int. Added the awaitility
library to perform assertions in test which is more reliable than using Thread.sleep directly to wait for events to happen.
* checkstyle fix
* Add sneaky throws to fix sonar lint issue. This is fine as the newFile method is not being tested but instead the new SimpleFileWriter(...) is.
* The first booking needs to happen outside the assertions. Fixed other warnings
* Use records to pass around related objects instead of using a large number of
individual params, which sonar did not like.
* Checkstyle fixes
* checkstyle fixes
* Remove complexity to keep sonar happy.
* Split into different methods to reduce complexity. Could be broken down even further but currently Sonar is happy.
* Move files to correct package
* Add valid assertions to tests
* rename constants to avoid confusion
* Sonar warning related to cognitive complexity can be suppressed as the methods are quite generic and not functional enough to be separated out.
* Use constants to keep Sonar happy
* Use correct constant naming conventions
* Use correct constant naming conventions
* Use lombok to define noargsconstructor
* Use a single method to do the logging
* Remove unused constructor and redundant method
* Use a reusable method for logging
* refactoring #1012: Format specifiers should be used instead of string concatenation.
* refactoring #1012: Format specifiers should be used instead of string concatenation.
* refactoring #1012: Remove isInfoEnabled check
* #2449 bump maven-checkstyle-plugin from 3.1.0 to 3.2.0 + resolve checkstyle issues
* remove FileSelectorJFrame.java to resolve checkstyle issue
* remove FileSelectorJFrame.java to resolve checkstyle issue
* remove FileSelectorJFrame.java to resolve checkstyle issue
* add refactored file with correct filename to resolve checkstyle issue
* add the test data
* change filenames from JFrame to Jframe for checkstyle
* fix code smell from sonar report
* add new testcases to improve the test coverage
* remove code smell
* Changed database implementation. Removed static objects.
* Fix Logs
* Fix 40 errors from checkstyle plugin run. 139 left))
* Fix CacheStore errors from checkstyle plugin 107 left
* Fix last errors in checkstyle.
* Fix sonar issues
* Fix issues in VALIDATE phase
* Fix Bug with mongo connection. Used "Try with resources"
* Add test
* Added docker-compose for mongo db. MongoDb db work fixed.
* Provided missing tests
* Comments to start Application with mongo.
* Fix some broken links
* Remove extra space
* Update filename
* Fix some links in localization folders
* Fix link
* Update frontmatters
* Work on patterns index page
* Work on index page
* Fixes according PR comments. Mainly Readme edits.
* fix frontmatter
* add missing png
* Update pattern index.md
* Add index.md for Chinese translation
* update image paths
* update circuit breaker image paths
* Update image paths for localizations
* add generated puml
* Add missing image
* Update img file extensions
* Update the rest of the EN and ZH patterns to conform with the new website
Co-authored-by: Victor Zalevskii <zvictormail@gmail.com>
* Fix some broken links
* Remove extra space
* Update filename
* Fix some links in localization folders
* Fix link
Co-authored-by: Subhrodip Mohanta <hello@subho.xyz>
* Fix languages
* Missed change for version number
* Add language field for presentation
* Revert change in README for double buffer
Co-authored-by: Jackie Nim <=>
* Adding support for maven assembly plugin to generate executable jar with all dependencies in built
* Merge branch 'master' into issue-989
# Conflicts:
# abstract-document/pom.xml
# pom.xml
* Adding maven assemly plugin for projects with name A
* Update in format as per checkstyle, i.e. Spcae in place of tab with size of 2
* batch set - 2 having all project with B and C
* issue-989 d-e-f
* fixing eip pom and adding g-h-i-l-m-n Skipping naked object as it seems it doesn't have main method, will consider this at end
* Adding for O and P projects Skipping Object-Mother as we don't have main method for same.
* Add custom license header style in order to comply with Google's Checkstyle format
* Update license headers to comply with Google's Checkstyle format
* 1011: Added SuppressWarnings for SonarCloud errors
All of these files are causing SonarCloud to report the following error:
Loops should not be infinite
Since these instances all require an infinite loop that will never end,
these warnings should be disabled so that SonarCloud no longer reports
them as error.
The rule is: squid:S2189
* 1011: Made all of the randoms static and final
According to SonarCloud rule: "Random" objects should be reused, randoms
should not be recreated. This commit has taken all of the Randoms and made
them constant variables in the files that are using them.
* #496 Add pipeline module to parent pom ✨
* #496: Add main application class and test for pipeline
* #496: Checkstyle format and add log messages on pipeline stages 🎨
* #496: Fill readme sections of pipeline ✨
* #496: Javadocs and checkstyle formatting 🎨
* #496: Follow PMD checks and add more explanation as block comment on App.java
* #496: Apply requested PR changes by iluwatar 🎨
* #970: Replace log4j usage on commander pattern to Slf4j API 🎨
* #970: Replace log4j usage on dao pattern to Slf4j API 🎨
* #970: Replace log4j usage on data mapper pattern to Slf4j API 🎨
* #970: Remove log4j dependency on data transfer object pom 🔥
* #970: Replace log4j usage on module pattern to Slf4j API 🎨
* #970: Replace log4j usage on serverless pattern to Slf4j API 🎨
This also removes the aws log4j dependency
* #970: Remove unnecessary gitignore line for log4j.xml 🔥
* #970: Remove remaining remnants of log4j 🔥
* #970: Replace System.out logging with appropriate logging methods 🎨
* #970: Replace System.out method references to Logger::info 🎨
* Upgrade maven plugins
* Upgrade maven plugins
Some general code cleanup was necessary due to upgrade of PMD and checkstyle.
Also needed to add Junit 4 as a dependency due to Mockito.timout issue found here:
https://github.com/mockito/mockito/issues/152