prowide-iso20022
prowide-iso20022 copied to clipboard
SRU2023 v10.1
Summary by CodeRabbit
-
New Features
- Updated project to utilize Java 11 and Jakarta EE 10, enhancing compatibility and performance.
- Introduced modern date and time handling with
OffsetDateTime
forcreationDate
methods.
-
Bug Fixes
- Resolved Null Pointer Exception (NPE) in the
DefaultMxMetadataStrategy
.
- Resolved Null Pointer Exception (NPE) in the
-
Documentation
- Updated CHANGELOG to reflect version upgrades and significant changes.
-
Chores
- Enhanced
.gitignore
to exclude.java-version
files. - Updated Gradle wrapper and build configuration to use Gradle 8.5 and Java 11, respectively.
- Enhanced
Hi Zubri, when do you anticipate this being released?
Hi Zubri, when do you anticipate this being released?
We normally made new releases for SRU updates available via Maven Central by October each year.
Walkthrough
Walkthrough
The recent changes enhance the project by updating the Java version to 11, transitioning from Java EE to Jakarta EE for improved compatibility, and restructuring various classes for better maintainability and readability. Key improvements include modifications to import statements, access modifiers of static variables, and the addition of essential methods for object representation and comparison. Additionally, the .gitignore
file was updated to exclude Java version management files, further refining the project's configuration.
Changes
Files/Directories | Change Summary |
---|---|
.gitignore |
Added .java-version to ignore Java version management files. |
.idea/compiler.xml |
Updated Java bytecode target version from 1.8 to 11 . |
CHANGELOG.md |
Incremented version from 9.x to 10.x, noting significant updates, including migration to Java 11. |
README.md |
Removed the dependencies section, indicating a change in dependency management strategy. |
build.gradle |
Upgraded dependencies and set Java language version to 11. |
gradle/wrapper/gradle-wrapper.properties |
Updated Gradle version from 7.6.4 to 8.5 . |
iso20022-core/src/main/java/**/*.java |
Transitioned from javax.persistence to jakarta.persistence for various classes; modified date handling types. |
model-acmt-mx/src/generated/java/**/*.java |
Updated XML binding annotations from javax to jakarta , modified access modifiers for static fields, and reorganized methods. |
Sequence Diagram(s)
sequenceDiagram
participant User
participant Application
participant Database
User->>Application: Request data
Application->>Database: Query for data
Database-->>Application: Return data
Application-->>User: Send data response
Recent review details
Configuration used: CodeRabbit UI Review profile: ASSERTIVE
Commits
Files that changed from the base of the PR and between 7cc0e5923471ddfae6c13da801187c517e94bb33 and cf5c9868d81edd798adfde9802f27ce3e9c59671.
Files selected for processing (105)
- .gitignore (1 hunks)
- .idea/compiler.xml (1 hunks)
- CHANGELOG.md (1 hunks)
- README.md (1 hunks)
- build.gradle (12 hunks)
- gradle/wrapper/gradle-wrapper.properties (1 hunks)
- iso20022-core/src/main/java/com/prowidesoftware/swift/model/MxSwiftMessage.java (1 hunks)
- iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/AbstractMX.java (4 hunks)
- iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/AbstractMXAdapter.java (2 hunks)
- iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/AppHdr.java (2 hunks)
- iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/AppHdrFactory.java (5 hunks)
- iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/BusinessAppHdrV01.java (4 hunks)
- iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/BusinessAppHdrV02.java (3 hunks)
- iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/BusinessAppHdrV03.java (3 hunks)
- iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/BusinessHeader.java (1 hunks)
- iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/DefaultMxMetadataStrategy.java (4 hunks)
- iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/JaxbContextCache.java (1 hunks)
- iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/JaxbContextCacheImpl.java (1 hunks)
- iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/JaxbContextLoader.java (1 hunks)
- iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/LegacyAppHdr.java (3 hunks)
- iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/MxParseUtils.java (1 hunks)
- iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/MxReadConfiguration.java (1 hunks)
- iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/MxReadParams.java (1 hunks)
- iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/MxWriteConfiguration.java (2 hunks)
- iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/MxWriteImpl.java (1 hunks)
- iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/MxWriteParams.java (1 hunks)
- iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/MxWriteUtils.java (1 hunks)
- iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/adapters/LocalDateJsonAdapter.java (1 hunks)
- iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/adapters/OffsetDateTimeJsonAdapter.java (1 hunks)
- iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/adapters/OffsetTimeJsonAdapter.java (1 hunks)
- iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/adapters/TypeAdaptersConfiguration.java (4 hunks)
- iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/adapters/YearJsonAdapter.java (1 hunks)
- iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/adapters/YearMonthJsonAdapter.java (1 hunks)
- iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/adapters/ZuluOffsetDateTimeAdapter.java (1 hunks)
- iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/sys/dic/package-info.java (1 hunks)
- iso20022-core/src/test/java/com/prowidesoftware/issues/Issue11.java (2 hunks)
- iso20022-core/src/test/java/com/prowidesoftware/issues/Issue1958.java (1 hunks)
- iso20022-core/src/test/java/com/prowidesoftware/issues/IssueJira1392Test.java (1 hunks)
- iso20022-core/src/test/java/com/prowidesoftware/issues/IssueJira1567Test.java (1 hunks)
- iso20022-core/src/test/java/com/prowidesoftware/swift/model/MetadataExtractorLenientTest.java (1 hunks)
- iso20022-core/src/test/java/com/prowidesoftware/swift/model/mx/AbstractMxJsonTestAdapters.java (1 hunks)
- iso20022-core/src/test/java/com/prowidesoftware/swift/model/mx/AppHdrParserTest.java (3 hunks)
- iso20022-core/src/test/java/com/prowidesoftware/swift/model/mx/BusinessAppHdrV01Test.java (2 hunks)
- iso20022-core/src/test/java/com/prowidesoftware/swift/model/mx/GuavaJaxbContextCache.java (1 hunks)
- iso20022-core/src/test/java/com/prowidesoftware/swift/model/mx/JaxbContextCacheImplTest.java (1 hunks)
- iso20022-core/src/test/java/com/prowidesoftware/swift/model/mx/LegacyAppHdrTest.java (1 hunks)
- iso20022-core/src/test/java/com/prowidesoftware/swift/model/mx/MxReadImplTest.java (3 hunks)
- iso20022-core/src/test/java/com/prowidesoftware/swift/model/mx/MxWriteTest.java (1 hunks)
- iso20022-core/src/test/java/com/prowidesoftware/swift/model/mx/adapters/IssueJira1566Test.java (1 hunks)
- iso20022-core/src/test/java/com/prowidesoftware/swift/model/mx/adapters/LocalDateAdapterTest.java (1 hunks)
- iso20022-core/src/test/java/com/prowidesoftware/swift/model/mx/adapters/LocalDateJsonAdapterTest.java (1 hunks)
- iso20022-core/src/test/java/com/prowidesoftware/swift/model/mx/adapters/MxWriteAdaptersTest.java (1 hunks)
- iso20022-core/src/test/java/com/prowidesoftware/swift/model/mx/adapters/OffsetDateTimeAdapterTest.java (1 hunks)
- iso20022-core/src/test/java/com/prowidesoftware/swift/model/mx/adapters/OffsetDateTimeJsonAdapterTest.java (1 hunks)
- iso20022-core/src/test/java/com/prowidesoftware/swift/model/mx/adapters/OffsetTimeAdapterTest.java (1 hunks)
- iso20022-core/src/test/java/com/prowidesoftware/swift/model/mx/adapters/OffsetTimeJsonAdapterTest.java (1 hunks)
- iso20022-core/src/test/java/com/prowidesoftware/swift/model/mx/adapters/YearJsonAdapterTest.java (1 hunks)
- iso20022-core/src/test/java/com/prowidesoftware/swift/model/mx/adapters/YearMonthAdapterTest.java (1 hunks)
- iso20022-core/src/test/java/com/prowidesoftware/swift/model/mx/adapters/YearMonthJsonAdapterTest.java (1 hunks)
- iso20022-core/src/test/java/com/prowidesoftware/swift/model/mx/adapters/ZuluOffsetDateTimeAdapterMarshallingTest.java (3 hunks)
- iso20022-core/src/test/java/com/prowidesoftware/swift/model/mx/adapters/ZuluOffsetDateTimeAdapterUnmarshallingTest.java (1 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00100101.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00100102.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00100103.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00100104.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00100105.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00100106.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00100107.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00100108.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00200101.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00200102.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00200103.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00200104.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00200105.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00200106.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00200107.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00200108.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00300101.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00300102.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00300103.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00300104.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00300105.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00300106.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00300107.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00300108.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00400101.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00400102.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00400103.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00400104.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00400105.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00400106.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00500101.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00500102.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00500103.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00500104.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00500105.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00500106.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00600101.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00600102.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00600103.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00600104.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00600105.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00600106.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00600107.java (4 hunks)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00700101.java (4 hunks)
Files not processed due to max files limit (58)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00700102.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00700103.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00700104.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00800101.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00800102.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00800103.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00800104.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00900101.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00900102.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00900103.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt01000101.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt01000102.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt01000103.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt01100101.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt01100102.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt01100103.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt01200101.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt01200102.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt01200103.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt01300101.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt01300102.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt01300103.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt01400101.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt01400102.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt01400103.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt01400104.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt01500101.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt01500102.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt01500103.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt01600101.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt01600102.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt01600103.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt01700101.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt01700102.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt01700103.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt01800101.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt01800102.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt01800103.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt01900101.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt01900102.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt01900103.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt02000101.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt02000102.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt02000103.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt02100101.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt02100102.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt02100103.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt02200101.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt02200102.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt02200103.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt02300101.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt02300102.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt02300103.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt02400101.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt02400102.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt02400103.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt02500101.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt02600101.java
Files not reviewed due to server errors (9)
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00600101.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00600102.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00600103.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00400104.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00400105.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00500106.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00100107.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00100108.java
- model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00300106.java
Additional context used
Path-based instructions (44)
model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00600101.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00600102.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00600103.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00600104.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00600105.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00400101.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00500101.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00400102.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00400103.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00500102.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00500103.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00500104.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00400104.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00400105.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00500106.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00400106.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00500105.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00700101.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00100101.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00600106.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00600107.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00200101.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00100102.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00300101.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00200102.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00300102.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00100103.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00200103.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00100104.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00300103.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00200104.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00300104.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00100105.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00200105.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00300105.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00100106.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00200106.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00100107.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00100108.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00300106.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00300107.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00200107.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00300108.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00200108.java (1)
Pattern
**/generated/**
: directories within the source code with name "generated" must not be analyzed since it is generated code.
Markdownlint
CHANGELOG.md
3-3: Expected: h2; Actual: h4 Heading levels should only increment by one level at a time
(MD001, heading-increment)
4-4: Expected: 0; Actual: 2 Unordered list indentation
(MD007, ul-indent)
7-7: Expected: 0; Actual: 2 Unordered list indentation
(MD007, ul-indent)
10-10: Expected: 0; Actual: 2 Unordered list indentation
(MD007, ul-indent)
13-13: Expected: 0; Actual: 2 Unordered list indentation
(MD007, ul-indent)
14-14: Expected: 0; Actual: 2 Unordered list indentation
(MD007, ul-indent)
15-15: Expected: 0; Actual: 2 Unordered list indentation
(MD007, ul-indent)
16-16: Expected: 0; Actual: 2 Unordered list indentation
(MD007, ul-indent)
17-17: Expected: 0; Actual: 2 Unordered list indentation
(MD007, ul-indent)
20-20: Expected: 0; Actual: 2 Unordered list indentation
(MD007, ul-indent)
21-21: Expected: 0; Actual: 2 Unordered list indentation
(MD007, ul-indent)
22-22: Expected: 0; Actual: 2 Unordered list indentation
(MD007, ul-indent)
25-25: Expected: 0; Actual: 2 Unordered list indentation
(MD007, ul-indent)
28-28: Expected: 0; Actual: 2 Unordered list indentation
(MD007, ul-indent)
31-31: Expected: 0; Actual: 2 Unordered list indentation
(MD007, ul-indent)
32-32: Expected: 0; Actual: 2 Unordered list indentation
(MD007, ul-indent)
33-33: Expected: 0; Actual: 2 Unordered list indentation
(MD007, ul-indent)
34-34: Expected: 0; Actual: 2 Unordered list indentation
(MD007, ul-indent)
35-35: Expected: 0; Actual: 2 Unordered list indentation
(MD007, ul-indent)
3-3: Expected: 1; Actual: 0; Below Headings should be surrounded by blank lines
(MD022, blanks-around-headings)
6-6: Expected: 1; Actual: 0; Below Headings should be surrounded by blank lines
(MD022, blanks-around-headings)
9-9: Expected: 1; Actual: 0; Below Headings should be surrounded by blank lines
(MD022, blanks-around-headings)
12-12: Expected: 1; Actual: 0; Below Headings should be surrounded by blank lines
(MD022, blanks-around-headings)
19-19: Expected: 1; Actual: 0; Below Headings should be surrounded by blank lines
(MD022, blanks-around-headings)
24-24: Expected: 1; Actual: 0; Below Headings should be surrounded by blank lines
(MD022, blanks-around-headings)
27-27: Expected: 1; Actual: 0; Below Headings should be surrounded by blank lines
(MD022, blanks-around-headings)
30-30: Expected: 1; Actual: 0; Below Headings should be surrounded by blank lines
(MD022, blanks-around-headings)
4-4: null Lists should be surrounded by blank lines
(MD032, blanks-around-lists)
7-7: null Lists should be surrounded by blank lines
(MD032, blanks-around-lists)
10-10: null Lists should be surrounded by blank lines
(MD032, blanks-around-lists)
13-13: null Lists should be surrounded by blank lines
(MD032, blanks-around-lists)
20-20: null Lists should be surrounded by blank lines
(MD032, blanks-around-lists)
25-25: null Lists should be surrounded by blank lines
(MD032, blanks-around-lists)
28-28: null Lists should be surrounded by blank lines
(MD032, blanks-around-lists)
31-31: null Lists should be surrounded by blank lines
(MD032, blanks-around-lists)
Additional comments not posted (217)
iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/BusinessHeader.java (1)
1-1
: Empty File Detected.The file
BusinessHeader.java
is currently empty. Verify if this is intentional or if content is missing. If it's a placeholder, consider adding a comment to indicate its purpose.gradle/wrapper/gradle-wrapper.properties (1)
3-3
: Verify Compatibility with Gradle 8.5.The Gradle version has been updated to 8.5. Ensure that all build scripts and plugins are compatible with this version to avoid potential build issues.
.idea/compiler.xml (1)
4-4
: Verify Compatibility with Java 11.The bytecode target level has been updated to Java 11. Ensure that all dependencies and project configurations are compatible with Java 11 to prevent runtime issues.
.gitignore (1)
32-32
: Good addition to.gitignore
.Adding
.java-version
helps prevent local Java version management files from being tracked, maintaining a clean repository.iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/sys/dic/package-info.java (1)
27-28
: Migration to Jakarta EE is appropriate.The change from
javax.xml.bind.annotation
tojakarta.xml.bind.annotation
aligns with the transition to Jakarta EE, ensuring compatibility with the latest standards.iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/MxWriteUtils.java (1)
18-21
: Migration to Jakarta EE is appropriate.The change from
javax.xml.bind
tojakarta.xml.bind
aligns with the transition to Jakarta EE, ensuring compatibility with the latest standards.iso20022-core/src/test/java/com/prowidesoftware/swift/model/mx/GuavaJaxbContextCache.java (1)
20-20
: Transition to Jakarta EE approved.The import change from
javax.xml.bind.JAXBContext
tojakarta.xml.bind.JAXBContext
aligns with the transition to Jakarta EE. Ensure that the rest of the codebase is compatible with Jakarta EE.iso20022-core/src/test/java/com/prowidesoftware/swift/model/mx/JaxbContextCacheImplTest.java (1)
20-21
: Transition to Jakarta EE approved.The import changes from
javax.xml.bind
tojakarta.xml.bind
forJAXBContext
andJAXBException
are consistent with the transition to Jakarta EE. Ensure that all tests are compatible with Jakarta EE.iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/MxReadConfiguration.java (1)
19-19
: Transition to Jakarta EE approved.The import change from
javax.xml.bind.JAXBContext
tojakarta.xml.bind.JAXBContext
is part of the transition to Jakarta EE. Ensure that the application is compatible with Jakarta EE.iso20022-core/src/test/java/com/prowidesoftware/issues/IssueJira1392Test.java (1)
11-11
: Class renaming approved.Renaming the class to
IssueJira1392Test
aligns with test naming conventions, enhancing clarity.iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/adapters/YearJsonAdapter.java (1)
1-45
: New JSON adapter implementation approved.The
YearJsonAdapter
correctly implements both serialization and deserialization forYear
using Gson. The use of a DTO is appropriate and aligns with best practices.iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/MxReadParams.java (1)
19-19
: Migration to Jakarta EE approved.The transition from
javax.xml.bind
tojakarta.xml.bind
aligns with the broader shift to Jakarta EE, ensuring compatibility with modern libraries.iso20022-core/src/test/java/com/prowidesoftware/issues/IssueJira1567Test.java (1)
17-39
: Test implementation is well-structured and effective.The test correctly verifies both default and custom date-time serialization behaviors. The use of a custom adapter is appropriate for the requirement.
iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/adapters/YearMonthJsonAdapter.java (1)
1-49
: LGTM!The
YearMonthJsonAdapter
class is well-implemented for serializing and deserializingYearMonth
objects using Gson. The use of a DTO class for JSON conversion is appropriate and maintains clarity.iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/adapters/LocalDateJsonAdapter.java (1)
1-53
: LGTM!The
LocalDateJsonAdapter
class is well-implemented for serializing and deserializingLocalDate
objects using Gson. The use of a DTO class for JSON conversion is appropriate and maintains clarity.iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/MxWriteParams.java (1)
19-19
: Verify compatibility with Jakarta EE.The change from
javax.xml.bind.JAXBContext
tojakarta.xml.bind.JAXBContext
reflects the transition to Jakarta EE. Ensure that all dependencies and configurations are compatible with Jakarta EE.Verification successful
Jakarta EE Compatibility Verified
The transition from
javax.xml.bind
tojakarta.xml.bind
appears complete. No remainingjavax
references were found in the Java files, build files, or configuration files. This suggests compatibility with Jakarta EE. However, ensure to test in a Jakarta EE runtime environment to confirm full compatibility.Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify compatibility with Jakarta EE by checking for javax to jakarta transitions. # Test: Search for javax imports that might need updating. Expect: No remaining javax.xml.bind imports. rg --type java 'import javax\.xml\.bind\.' --files-with-matches
Length of output: 65
Script:
#!/bin/bash # Description: Check for references to javax in build and configuration files to ensure full compatibility with Jakarta EE. # Search for javax references in build files (e.g., pom.xml for Maven projects). rg 'javax\.' -g '*pom.xml' -A 3 # Search for javax references in other configuration files. rg 'javax\.' -g '*.xml' -g '*.properties' -A 3
Length of output: 231
Script:
#!/bin/bash # Description: Perform a comprehensive search for javax references across the repository. # Search for javax references in all XML files, including pom.xml. rg 'javax\.' -g '*.xml' -A 3 # Search for javax references in all properties files. rg 'javax\.' -g '*.properties' -A 3
Length of output: 68
iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/JaxbContextCache.java (1)
18-19
: Transition to Jakarta EE is appropriate.The change from
javax.xml.bind
tojakarta.xml.bind
aligns with the transition to Jakarta EE, ensuring compatibility with newer standards.iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/AbstractMXAdapter.java (1)
55-55
: Improved code safety with explicit variable assignment.Declaring
klass
without initialization ensures it is explicitly assigned before use, reducing the risk of null pointer exceptions.iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/JaxbContextCacheImpl.java (1)
18-19
: Transition to Jakarta EE is appropriate.The change from
javax.xml.bind
tojakarta.xml.bind
aligns with the transition to Jakarta EE, ensuring compatibility with newer standards.iso20022-core/src/test/java/com/prowidesoftware/swift/model/mx/adapters/YearMonthJsonAdapterTest.java (5)
1-15
: Ensure License Compliance.The file includes a standard Apache License header. Ensure that the license terms are adhered to in the project.
18-24
: Review Imports for Necessity and Organization.The imports are well-organized and necessary for the test cases. Ensure that all imported classes are used in the file.
30-36
: Test Method Naming and Coverage.The method
testSerializationAndDeserialization
is well-named and covers multiple test cases. Ensure that all edge cases for serialization and deserialization are tested.
38-43
: Verify JSON Parsing Logic.The method
testSerializationAndDeserializationImpl
correctly parses JSON and performs serialization and deserialization checks. Verify that theYearMonthJsonAdapter
handles all expected JSON formats.
45-70
: Custom Pattern Test Validation.The
testYear_CustomPattern
method validates a custom JSON pattern. Ensure that theMxAcmt03400104
class correctly processes the JSON structure and that edge cases are considered.iso20022-core/src/test/java/com/prowidesoftware/swift/model/mx/adapters/IssueJira1566Test.java (2)
1-9
: Review Imports for Necessity and Organization.The imports are necessary for the test cases and are well-organized. Ensure that all imported classes are used in the file.
10-68
: Thoroughly Test Date and Time Handling.The test methods in
IssueJira1566Test
cover various scenarios for date and time handling, including different formats and offsets. Ensure that all edge cases are considered, especially for time zone offsets and nanosecond precision.iso20022-core/src/test/java/com/prowidesoftware/issues/Issue11.java (3)
24-24
: Ensure Proper Use of Annotations.The
@Disabled
annotation is appropriately used to skip a problematic test. Ensure that the reason provided is clear and that there is a plan to address the underlying issue.
Line range hint
36-44
: Review Disabled Test Logic.The disabled test method involves XML parsing and asserts nullity. Ensure that the issue causing the test to be disabled is documented and addressed in future updates.
Line range hint
46-80
: Verify XML Parsing Logic in Enabled Tests.The enabled test methods validate XML parsing with different scenarios. Ensure that all edge cases are considered, and the XML structure is correctly handled by the
MxPacs00200108
class.README.md (1)
Line range hint
1-1
: Verify the rationale for removing the dependencies section.The removal of the dependencies section suggests a shift in dependency management or documentation. Ensure that these dependencies are documented elsewhere if still relevant.
Verification successful
Dependencies section removal appears justified. The
javax.xml.bind
dependency is not found in the codebase, suggesting it is no longer relevant. TheProwide Core
is still mentioned in the README, indicating it is documented. No further action is required.Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify if the dependencies are documented elsewhere in the project. # Test: Search for mentions of `prowide-core` and `javax.xml.bind` in the project files. rg --type markdown --type yaml --type json 'prowide-core|javax.xml.bind'
Length of output: 187
Script:
#!/bin/bash # Search for `javax.xml.bind` in the entire codebase to check if it is still being used or mentioned. rg 'javax.xml.bind'
Length of output: 19
Tools
LanguageTool
[grammar] ~36-~36: Make sure that the noun ‘setup’ is correct. Did you mean the past participle “set up”? Context: ...erformance, local configurations can be setup in a gradle.properties file such as: ``...
(BE_VB_OR_NN)
[uncategorized] ~36-~36: Possible missing comma found. Context: ...ons can be setup in a gradle.properties file such as: ``` org.gradle.jvmargs=-Xms512...
(AI_HYDRA_LEO_MISSING_COMMA)
Markdownlint
32-32: null Bare URL used
(MD034, no-bare-urls)
iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/adapters/OffsetTimeJsonAdapter.java (1)
1-95
: LGTM! Verify the usage ofOffsetTimeJsonAdapter
.The implementation of the
OffsetTimeJsonAdapter
is well-structured and aligns with best practices for JSON serialization/deserialization using Gson.Ensure that the adapter is correctly integrated and used within the project.
Verification successful
OffsetTimeJsonAdapter is correctly integrated and used within the project.
The
OffsetTimeJsonAdapter
is utilized in theAbstractMX.java
file, where it is registered as a type adapter forOffsetTime
. Additionally, there are tests for this adapter inOffsetTimeJsonAdapterTest.java
, indicating that its functionality is verified.
iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/AbstractMX.java
: Adapter registered forOffsetTime
.iso20022-core/src/test/java/com/prowidesoftware/swift/model/mx/adapters/OffsetTimeJsonAdapterTest.java
: Tests for the adapter.Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify the usage of `OffsetTimeJsonAdapter` in the codebase. # Test: Search for the usage of `OffsetTimeJsonAdapter` in the Java files. rg --type java 'OffsetTimeJsonAdapter'
Length of output: 918
iso20022-core/src/test/java/com/prowidesoftware/swift/model/mx/adapters/OffsetTimeJsonAdapterTest.java (4)
1-15
: License and package declaration.The license header and package declaration are correctly included and formatted.
18-23
: Import statements.The necessary imports for testing and JSON handling are correctly included.
25-27
: Class and adapter initialization.The test class
OffsetTimeJsonAdapterTest
is correctly defined, and the adapter is initialized as a final field.
73-78
: Helper method for test implementation.The
testSerializationAndDeserializationImpl
method effectively abstracts the test logic, promoting code reuse and clarity.iso20022-core/src/test/java/com/prowidesoftware/swift/model/mx/adapters/ZuluOffsetDateTimeAdapterUnmarshallingTest.java (8)
1-15
: License and package declaration.The license header and package declaration are correctly included and formatted.
18-23
: Import statements.The necessary imports for testing and date-time handling are correctly included.
24-26
: Class and adapter initialization.The test class
ZuluOffsetDateTimeAdapterUnmarshallingTest
is correctly defined, and the adapter is initialized as a final field.
28-39
: Test unmarshalling with fraction of seconds.The
testUnmarshallFractionOfSeconds
method effectively tests the unmarshalling of a date-time string with fractional seconds.
41-52
: Test unmarshalling without fraction of seconds.The
testUnmarshallNoFractionOfSeconds
method covers unmarshalling without fractional seconds, ensuring correct handling of such cases.
54-65
: Test unmarshalling with UTC offset.The
testUnmarshallUTCOffset
method verifies the handling of a UTC offset, ensuring accurate unmarshalling.
67-78
: Test unmarshalling with non-UTC offset.The
testUnmarshallOffset
method tests the handling of a non-UTC offset, which is crucial for comprehensive coverage.
80-90
: Test unmarshalling without any offset.The
testUnmarshallNoOffset
method ensures that date-time strings without an offset are handled correctly.iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/JaxbContextLoader.java (2)
Line range hint
22-84
: Class functionality remains intact.The
JaxbContextLoader
class continues to manage theJaxbContextCache
without any changes to its core logic or functionality.
18-19
: Transition to Jakarta EE imports.The import statements have been updated to use
jakarta.xml.bind
, aligning with the Jakarta EE standards. Ensure that all dependencies are compatible with this change.Verification successful
Jakarta EE Import Compatibility Verified
The transition to
jakarta.xml.bind
imports is consistent across the codebase. All instances ofJAXBContext
andJAXBException
are now using the Jakarta EE package. There are no remainingjavax.xml.bind
imports, and the usage of these classes appears to be compatible with Jakarta EE standards.
- Files using
JAXBContext
andJAXBException
:
MxWriteParams.java
MxWriteUtils.java
MxWriteImpl.java
MxReadParams.java
LegacyAppHdr.java
BusinessAppHdrV03.java
BusinessAppHdrV02.java
BusinessAppHdrV01.java
JaxbContextLoader.java
JaxbContextCacheImpl.java
JaxbContextCache.java
GuavaJaxbContextCache.java
No further action is required regarding the transition to Jakarta EE imports.
Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify compatibility with Jakarta EE imports. # Test: Search for any remaining `javax.xml.bind` imports. Expect: No results. rg --type java 'import javax.xml.bind'
Length of output: 40
Script:
#!/bin/bash # Description: Verify usage of JAXBContext and JAXBException for compatibility with Jakarta EE. # Search for usage of JAXBContext in the codebase. rg --type java 'JAXBContext' -A 3 # Search for usage of JAXBException in the codebase. rg --type java 'JAXBException' -A 3
Length of output: 45056
iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/adapters/TypeAdaptersConfiguration.java (5)
61-61
: LGTM!The addition of
yearMonthAdapter
is well-documented and aligns with the class's purpose.
69-69
: LGTM!The addition of
yearAdapter
is well-documented and aligns with the class's purpose.
77-77
: LGTM!The addition of
monthAdapter
is well-documented and aligns with the class's purpose.
90-95
: LGTM!The constructor correctly initializes all adapter fields with default implementations, enhancing robustness.
112-119
: LGTM!The
asList
method correctly includes checks for the new adapters, ensuring comprehensive adapter management.iso20022-core/src/test/java/com/prowidesoftware/swift/model/mx/MxWriteTest.java (1)
96-96
: Good practice: Commented out debug output.Commenting out the
System.out.println
statement reduces console noise, aligning with best practices for cleaner test outputs.iso20022-core/src/test/java/com/prowidesoftware/swift/model/mx/adapters/ZuluOffsetDateTimeAdapterMarshallingTest.java (5)
26-34
: Ensure time zone correctness in tests.The
testMarshallFractionOfSeconds
method correctly tests marshaling with fractional seconds and a time zone offset. Ensure that the expected output string accounts for the conversion to Zulu time (UTC).Verification successful
Time Zone Conversion in Test is Correct
The test method
testMarshallFractionOfSeconds
correctly verifies the conversion of anOffsetDateTime
with a 3-hour offset to Zulu time (UTC). The expected output "2022-03-04T09:50:08.123Z" accurately reflects this conversion. No issues found with the time zone conversion logic in the test.Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify the correctness of time zone conversion in test cases. # Test: Check for expected Zulu time conversion in test cases. rg --type java -A 2 'assertEquals\("2022-03-04T09:50:08.123Z", adapter.marshal'
Length of output: 519
39-41
: Ensure time zone correctness in tests.The
testMarshallNoFractionOfSeconds
method correctly tests marshaling without fractional seconds. Ensure that the expected output string accounts for the conversion to Zulu time (UTC).Verification successful
Time Zone Conversion in Test is Correct
The test case correctly verifies the conversion of an
OffsetDateTime
with a 3-hour offset to Zulu time (UTC). The expected output "2022-03-04T09:50:08Z" is accurate. No issues found with the time zone conversion in this test.Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify the correctness of time zone conversion in test cases. # Test: Check for expected Zulu time conversion in test cases. rg --type java -A 2 'assertEquals\("2022-03-04T09:50:08Z", adapter.marshal'
Length of output: 511
114-117
: Verify XML parsing and marshalling logic.The test checks conversion of
CreDtTm
with an offset to Zulu time. Ensure that the conversion logic correctly adjusts the time to UTC.
46-47
: Ensure time zone correctness in tests.The
testMarshallNoOffset
method checks marshaling with no offset. The expected output should reflect the conversion to Zulu time (UTC).Verification successful
Time zone conversion is correctly handled in the test.
The
marshal
method in theZuluOffsetDateTimeAdapter
class correctly converts theOffsetDateTime
to Zulu time (UTC), ensuring the expected behavior in the test case. No changes are needed.Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify the correctness of time zone conversion in test cases. # Test: Check for expected Zulu time conversion in test cases. rg --type java -A 2 'assertEquals\("2022-03-04T12:50:08Z", adapter.marshal'
Length of output: 511
Script:
#!/bin/bash # Search for the implementation of the `marshal` method in the `ZuluOffsetDateTimeAdapter` class. ast-grep --lang java --pattern $'class ZuluOffsetDateTimeAdapter { $$$ String marshal(OffsetDateTime $_) { $$$ } $$$ }'
Length of output: 134
Script:
#!/bin/bash # Use ripgrep to search for the implementation of the `marshal` method in the codebase. rg 'String marshal\(' -A 5
Length of output: 12343
78-82
: Verify XML parsing and marshalling logic.The test verifies that the
CreDtTm
is preserved as Zulu date time after parsing and marshalling. Ensure that the parsing logic correctly handles Zulu time.iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/adapters/OffsetDateTimeJsonAdapter.java (1)
32-55
: Ensure DTO structure aligns with serialization requirements.The
serialize
method converts anOffsetDateTime
into aDateTimeOffsetDTO
. Ensure that the DTO structure is correctly aligned with the JSON format expected by consumers of this serialized data. Consider documenting the expected JSON structure for clarity.iso20022-core/src/test/java/com/prowidesoftware/swift/model/mx/adapters/OffsetDateTimeAdapterTest.java (1)
11-49
: Comprehensive test coverage for date-time formats.The
testOffsetDateTime
method provides comprehensive coverage for various date-time formats, including those with and without fractional seconds and different offsets. Ensure that any edge cases, such as invalid formats, are also tested to improve robustness.iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/AppHdr.java (1)
99-99
: Verify compatibility with existing implementations.The change from
XMLGregorianCalendar
toOffsetDateTime
in thecreationDate
method may impact existing implementations of theAppHdr
interface. Ensure that all implementations are updated to handle this new return type.iso20022-core/src/test/java/com/prowidesoftware/swift/model/MetadataExtractorLenientTest.java (2)
1-1
: Package declaration change.The package declaration has been updated to better align with the project's structure. This enhances the clarity and maintainability of the codebase.
1-1
: Removal of unused import.The import statement for
MxSwiftMessage
has been removed, indicating it was not used in the class. This contributes to a cleaner codebase.iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/MxWriteImpl.java (1)
22-25
: Transition from Java EE to Jakarta EE.The import statements have been updated to use the
jakarta.xml.bind
package. This change is part of the transition from Java EE to Jakarta EE, ensuring compatibility with the latest standards.CHANGELOG.md (1)
24-24
: New utility class added.The addition of
SupplementaryDataUtils
facilitates "SplmtryData" extraction from MX messages, enhancing functionality.Tools
Markdownlint
24-24: Expected: 1; Actual: 0; Below Headings should be surrounded by blank lines
(MD022, blanks-around-headings)
iso20022-core/src/test/java/com/prowidesoftware/swift/model/mx/adapters/OffsetTimeAdapterTest.java (7)
28-36
: Test method approved.The
testUnmarshallFractionOfSeconds
method is well-structured and correctly verifies the unmarshalling of anOffsetTime
string with fractional seconds.
38-45
: Test method approved.The
testUnmarshallNoFractionOfSeconds
method is well-structured and correctly verifies the unmarshalling of anOffsetTime
string without fractional seconds.
47-56
: Test method approved.The
testUnmarshallNoOffset
method is well-structured and correctly verifies the unmarshalling of anOffsetTime
string without an explicit offset.
58-68
: Test method approved.The
testMarshallNoFractionOfSecondsAndWithFractionOfSeconds
method is well-structured and correctly verifies the marshalling ofOffsetTime
objects with and without fractional seconds.
70-76
: Test method approved.The
testMarshallNoOffset
method is well-structured and correctly verifies the marshalling of anOffsetTime
object without an explicit offset.
78-106
: Test method approved.The
testOffsetTime
method is well-structured and uses a helper function to comprehensively verify various scenarios forOffsetTime
objects.
115-146
: Test method approved.The
testOffsetTimeWithNanosOnlyZero
method is well-structured and uses a helper function to comprehensively verifyOffsetTime
objects with nanos that are only zeros.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00100102.java (2)
10-14
: Transition to Jakarta XML Bindings.The import statements have been updated from
javax.xml.bind
tojakarta.xml.bind
, aligning with Jakarta EE standards. Ensure that the rest of the codebase is compatible with this change.
36-41
: Reconsider the removal offinal
from static fields.The
final
keyword was removed from several static fields, which may affect their perceived immutability. If these constants are intended to remain unchanged, consider keeping themfinal
.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00300101.java (2)
10-14
: Transition to Jakarta XML Bindings.The import statements have been updated from
javax.xml.bind
tojakarta.xml.bind
, aligning with Jakarta EE standards. Ensure that the rest of the codebase is compatible with this change.
36-41
: Reconsider the removal offinal
from static fields.The
final
keyword was removed from several static fields, which may affect their perceived immutability. If these constants are intended to remain unchanged, consider keeping themfinal
.iso20022-core/src/test/java/com/prowidesoftware/swift/model/mx/adapters/LocalDateAdapterTest.java (6)
15-20
: Good Test Coverage for Basic LocalDate Conversion.The test method
testLocalDate
effectively checks the basic functionality of converting a standard date string toLocalDate
and back. The assertions are straightforward and ensure the adapter works as expected.
22-27
: Test for Offset Handling is Clear.The
testLocalDateDropOffset
method correctly verifies that the adapter can handle and ignore offsets in date strings. This is a necessary test to ensure robustness in date parsing.
29-34
: Zone Handling Test is Well-Defined.The
testLocalDateDropZone
method ensures that the adapter can parse date strings with a 'Z' suffix, which is important for handling UTC dates. The test is well-written and covers this specific case.
36-41
: Time Dropping Test is Accurate.The
testLocalDateDropTime
method checks the adapter's ability to ignore time components in date strings. This test is crucial for verifying that only the date part is considered, and it is well-implemented.
43-154
: Comprehensive Test for Custom Date Patterns.The
testLocalDate_CustomPattern
method is thorough in testing custom date patterns. It uses a realistic XML payload and verifies multiple date formats, ensuring the adapter's flexibility and correctness in handling various patterns.
157-174
: Offset Ignoring Test is Effective.The
testLocalDateIgnoreOffset
method confirms that the adapter can correctly parse and ignore offsets in XML date strings. The test is well-structured and ensures the adapter's functionality in this context.iso20022-core/src/test/java/com/prowidesoftware/swift/model/mx/adapters/YearMonthAdapterTest.java (4)
1-15
: Ensure License Information is Updated.The license header is present, which is good practice. Ensure it reflects the latest project requirements.
29-89
: Test YearMonth Parsing and Serialization.The
testYearMonth
method effectively verifies the parsing and serialization of XML data containing year-month information. It checks that the XML content remains consistent after parsing and serialization, which is essential for data integrity.
91-153
: Test Custom YearMonth Pattern.The
testYearMonth_CustomPattern
method tests the ability to customize the year-month format using a specific pattern. This is a valuable test to ensure flexibility in date formatting.
155-179
: Test Custom Year Pattern.The
testYear_CustomPattern
method verifies the customization of year formatting, ensuring that the adapter correctly applies the specified pattern. This test is crucial for scenarios where non-standard year formats are required.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00200104.java (3)
10-14
: Transition to Jakarta EE.The import statements have been updated from
javax
tojakarta
, aligning with Jakarta EE standards. This change is crucial for compatibility with newer Java EE versions.
36-42
: Standardize Modifier Order.The order of modifiers for static fields has been standardized to
public static final
. This is a stylistic improvement that enhances readability and consistency across the codebase.
161-161
: Ensure Correctness offromJson
Method.The
fromJson
method's modifier order has been standardized. Verify that this method is correctly utilized in the codebase to ensure JSON deserialization works as expected.iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/LegacyAppHdr.java (3)
53-53
: Remove unnecessary transient modifier.The
transient
modifier was removed from theNAMESPACE
field. This is appropriate astransient
is used for serialization, andNAMESPACE
is a constant that should be serialized.
190-195
: Update method to use OffsetDateTime.The
setCreationDate
method now usesOffsetDateTime.now(ZoneOffset.UTC)
. This change improves the handling of date and time by using the modern Java Time API.
182-182
: Ensure compatibility with OffsetDateTime.The method
creationDate()
now returnsOffsetDateTime
. Verify that all usages of this method are compatible with the new return type.Verification successful
Usages of
creationDate()
are compatible withOffsetDateTime
.The method
creationDate()
consistently returnsOffsetDateTime
across various classes. Test assertions confirm compatibility withOffsetDateTime
, indicating that the change is correctly integrated.
MxWriteAdaptersTest.java
: Confirms compatibility through assertions comparingcreationDate()
with anotherOffsetDateTime
.Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify all usages of `creationDate()` are compatible with `OffsetDateTime`. # Test: Search for the method usage. Expect: Compatibility with `OffsetDateTime`. rg --type java -A 5 $'creationDate()'
Length of output: 4829
Script:
#!/bin/bash # Searching for usages of `creationDate()` to ensure compatibility with `OffsetDateTime`. rg --type java 'creationDate()' -A 10 -B 2
Length of output: 10567
iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/AppHdrFactory.java (4)
72-72
: Modernize date-time handling withOffsetDateTime
.The use of
OffsetDateTime.now(ZoneOffset.UTC)
is a good improvement overXMLGregorianCalendarUtils.now()
, providing a more robust and modern approach to date-time handling.
115-115
: Consistent use ofOffsetDateTime.now()
.The switch to
OffsetDateTime.now()
enhances the precision and usability of date-time values, aligning with Java's modern date-time API.
159-159
: AdoptOffsetDateTime.now()
for date-time consistency.Using
OffsetDateTime.now()
ensures consistent date-time representation across different header versions.
200-200
: Enhance legacy header creation withOffsetDateTime.now()
.The adoption of
OffsetDateTime.now()
in the legacy header method aligns it with modern date-time handling practices.iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/BusinessAppHdrV03.java (3)
54-54
: Visibility change forNAMESPACE
.The removal of
transient
from theNAMESPACE
constant clarifies its intended use and ensures it is included in serialization, which might be necessary for certain operations.
190-190
: Transition toOffsetDateTime
forcreationDate()
.Returning
OffsetDateTime
instead ofXMLGregorianCalendar
enhances compatibility with modern Java date-time practices, improving usability and precision.
198-203
: UpdatesetCreationDate
withOffsetDateTime.now()
.The use of
OffsetDateTime.now(ZoneOffset.UTC)
insetCreationDate
ensures consistent and precise date-time setting, aligning with best practices.iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/BusinessAppHdrV02.java (5)
24-34
: Imports updated to Jakarta EE and modern Date-Time API.The transition to
jakarta.xml.bind
andjava.time.OffsetDateTime
is appropriate for modern Java development.
191-191
: Return type ofcreationDate
updated toOffsetDateTime
.This change aligns with modern Java practices and improves date-time handling.
199-204
: Simplified date setting insetCreationDate
.Using
OffsetDateTime.now(ZoneOffset.UTC)
enhances clarity and aligns with modern practices.
54-54
: Verify the removal of the transient modifier forNAMESPACE
.Ensure that the change in serialization behavior is intentional and does not affect the system's functionality.
55-55
: Verify the removal of the transient modifier for_classes
.Ensure that the change in serialization behavior is intentional and does not affect the system's functionality.
iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/MxParseUtils.java (1)
24-25
: Imports updated to Jakarta EE.The transition to
jakarta.xml.bind
is appropriate for modern Java development.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00300105.java (4)
10-14
: Imports updated to Jakarta EE.The transition to
jakarta.xml.bind
is appropriate for modern Java development.
36-42
: Reordered static field modifiers for consistency.The changes improve readability and align with Java conventions.
161-161
: Modifier change forfromJson
method.Changing from
public final
topublic
allows for potential overriding, which may be intentional for flexibility.
165-178
: ReintroducedtoString
,equals
, andhashCode
methods.These methods are essential for debugging and collection operations, ensuring consistent behavior.
iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/BusinessAppHdrV01.java (4)
23-23
: Import statement change approved.The addition of
ZuluOffsetDateTimeAdapter
is appropriate for handling date-time offsets.
56-56
: Field declaration change approved.The removal of
transient
fromNAMESPACE
indicates it should be serializable, which is consistent with typical usage for constants.
174-174
: Method change approved.The transition to
OffsetDateTime
forcreationDate
is a modern approach and aligns with best practices.
182-187
: Method change approved.Using
OffsetDateTime.now(ZoneOffset.UTC)
ensures the creation date is set with UTC offset, enhancing precision.iso20022-core/src/test/java/com/prowidesoftware/swift/model/mx/AppHdrParserTest.java (2)
79-80
: Date field access change approved.Using
ChronoField
for year and month access standardizes the approach and aligns with Java time API best practices.
180-181
: Date field access change approved.The use of
ChronoField
for year and month access enhances consistency and clarity.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00100106.java (4)
10-14
: Import statement changes approved.The transition to
jakarta.xml.bind.annotation
aligns with Jakarta EE standards and ensures compatibility with newer Java versions.
36-42
: Constant declaration changes approved.Reordering modifiers to
static final
is a stylistic improvement that enhances readability without affecting functionality.
161-161
: Method change approved.Removing
final
fromfromJson
allows for potential extension, which can be beneficial for subclassing.
165-177
: Reintroduction oftoString
,equals
, andhashCode
methods approved.These methods are essential for accurate object representation and comparison, aiding in debugging and collection management.
model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00300108.java (4)
10-14
: Transition to Jakarta EE.The import changes from
javax.xml
tojakarta.xml
reflect the transition to Jakarta EE, which is a necessary update for compatibility with newer Java EE standards. This is a good practice to keep the codebase up-to-date with current technologies.
36-42
: Reordering of static field modifiers.The change from
public final static
topublic static final
is a stylistic improvement that aligns with Java conventions. This change does not affect functionality but improves code readability.
161-161
: Method modifier change.The change from
public final static
topublic static
for thefromJson
method is consistent with the other static methods in the class. This change enhances consistency across the codebase.
165-178
: Reorganization of methods.The reintroduction and reordering of the
toString
,equals
, andhashCode
methods at the end of the class improve the logical flow of method definitions. This organization enhances maintainability and readability.iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/DefaultMxMetadataStrategy.java (8)
94-94
: Null check for amount value.The added null check for the amount value ensures that a
Money
object is only created when both the currency and value are present. This prevents potentialNullPointerExceptions
and enhances reliability.
102-102
: Null check for amount value.The added null check for the amount value in
getCamt52Amount
ensures robustness by preventing the creation ofMoney
objects from incomplete data.
110-110
: Null check for amount value.The added null check for the amount value in
getCamt53Amount
is a good defensive programming practice, ensuring data integrity.
124-124
: Null check for amount value.The added null check for the amount value in
getCamt54Amount
improves error handling by ensuring that only complete data is processed.
132-132
: Null check for amount value.The added null check for the amount value in
getCamt56Amount
enhances the reliability of the method by preventing potential errors.
140-140
: Null check for amount value.The added null check for the amount value in
getCamt57Amount
ensures that the method handles incomplete data gracefully.
151-151
: Null check for amount value.The added null check for the amount value in
getPacs004Amount
is a good practice to preventNullPointerExceptions
.
184-184
: Null check for amount value.The added null check for the amount value in
getPacsAmount
ensures that only valid data is used to createMoney
objects, enhancing the robustness of the method.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00200108.java (4)
10-14
: Transition to Jakarta EE.The import changes from
javax.xml
tojakarta.xml
reflect the transition to Jakarta EE, which is a necessary update for compatibility with newer Java EE standards. This is a good practice to keep the codebase up-to-date with current technologies.
36-42
: Reordering of static field modifiers.The change from
public final static
topublic static final
is a stylistic improvement that aligns with Java conventions. This change does not affect functionality but improves code readability.
161-161
: Method modifier change.The change from
public final static
topublic static
for thefromJson
method is consistent with the other static methods in the class. This change enhances consistency across the codebase.
165-178
: Reorganization of methods.The reintroduction and reordering of the
toString
,equals
, andhashCode
methods at the end of the class improve the logical flow of method definitions. This organization enhances maintainability and readability.build.gradle (8)
81-85
: Source Sets Configuration: Improved Clarity and Maintainability.The source set configuration has been refactored for better clarity. This change improves the maintainability of the build script.
218-221
: Jar Task: Efficient Artifact Inclusion.The jar task now includes only
.jar
files, improving the efficiency of the build process. This is a positive change.
43-43
: Java Version Update: Ensure Compatibility.The Java version has been updated to 11. Ensure that all parts of the codebase are compatible with Java 11, and consider potential improvements in performance or security.
Verification successful
Java Version Update: Compatibility Verified
The search did not reveal any Java 8 specific features that would cause compatibility issues with Java 11. While there are deprecated annotations, these do not necessarily impact compatibility. Consider reviewing these deprecated elements for potential refactoring.
Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify compatibility of the codebase with Java 11. # Test: Search for any Java 8 specific features or deprecated methods that might cause issues. rg --type java --pcre2 'JavaVersion\.VERSION_8|@Deprecated'
Length of output: 3237
7-10
: Dependency Version Updates: Verify Compatibility and Benefits.The updates to the plugin versions (
gradle-quality-plugin
,axion-release-plugin
,publish-plugin
,spotless-plugin-gradle
) should be verified for compatibility with the rest of the codebase. Ensure that these updates provide necessary improvements or bug fixes.
112-112
: New Dependency Added: JAXB Implementation.The
jaxb-impl
dependency has been added. Ensure that this addition is necessary and does not conflict with existing dependencies.Also applies to: 139-139, 348-348
Verification successful
No Conflicts Detected with JAXB Implementation Dependency
The addition of the
jaxb-impl
dependency appears necessary and does not conflict with other dependencies. Comments in thebuild.gradle
file indicate an understanding of transitive dependencies and the requirement for JAXB due to its removal from the JDK.
- The
bind-api
is included transitively byjaxb-impl
.- The
jakarta.xml.bind-api
dependency is commented out, indicating it was considered but not needed directly.Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify the necessity and compatibility of the `jaxb-impl` dependency. # Test: Check for any existing JAXB dependencies and ensure no conflicts. rg --type gradle 'jaxb-impl|jakarta.xml.bind'
Length of output: 671
Script:
#!/bin/bash # Description: Search for other JAXB-related dependencies or configurations in the build.gradle file to check for potential conflicts. rg --type gradle 'jaxb|bind|xml.bind'
Length of output: 741
96-97
: Source and Target Compatibility: Confirm Java Version Alignment.The source and target compatibility have been set to Java 11. Ensure that all dependencies and modules are aligned with this version.
Verification successful
Java Version Alignment Verified
No other Java version settings were found in the build.gradle files, indicating alignment with Java 11. However, ensure that all dependencies are compatible with Java 11 through further manual verification if needed.
Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify that all dependencies and modules are compatible with Java 11. # Test: Check for any dependencies that might have issues with Java 11. rg --type gradle 'JavaVersion\.VERSION_8'
Length of output: 43
Script:
#!/bin/bash # Description: Verify Java version settings and check for compatibility with Java 11. # Search for any Java version settings other than Java 11 in build.gradle files. rg --type gradle 'JavaVersion\.VERSION_(?!11)' # Check for any dependencies that might have compatibility issues with Java 11. rg --type gradle 'sourceCompatibility|targetCompatibility'
Length of output: 361
Script:
#!/bin/bash # Description: Verify Java version settings other than Java 11 in build.gradle files. # Search for specific Java version settings other than Java 11. rg --type gradle 'JavaVersion\.VERSION_8|JavaVersion\.VERSION_9|JavaVersion\.VERSION_10|JavaVersion\.VERSION_12|JavaVersion\.VERSION_13|JavaVersion\.VERSION_14|JavaVersion\.VERSION_15|JavaVersion\.VERSION_16|JavaVersion\.VERSION_17'
Length of output: 234
157-157
: Updated Dependency: Prowide Software Core.The
pw-swift-core
dependency has been updated to a new version. Verify that this update is compatible with the rest of the codebase and provides necessary improvements.Also applies to: 341-341
501-503
: Test Task Configuration: Ensure Environment Compatibility.The test tasks have been updated to use Java versions 17 and 19. Verify that the test environments are set up correctly and compatible with these versions.
Also applies to: 507-509
Verification successful
Test Task Configuration Verified: Java 17 and 19 Compatibility
The
testOn17
andtestOn19
tasks inbuild.gradle
are configured to use Java versions 17 and 19, respectively. No compatibility issues were found in the current configuration. If there are specific plugins or dependencies that might be incompatible, further manual verification is recommended.Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify compatibility of test environments with Java 17 and 19. # Test: Check for any test-specific configurations that might need updating. rg --type gradle 'testOn17|testOn19'
Length of output: 126
Script:
#!/bin/bash # Extract detailed configurations for testOn17 and testOn19 tasks from build.gradle # Print lines around the task definitions to capture configurations rg --type gradle -A 10 'task\(\'testOn17\'|task\(\'testOn19\''
Length of output: 93
Script:
#!/bin/bash # Extract detailed configurations for testOn17 and testOn19 tasks from build.gradle # Corrected command to print lines around the task definitions to capture configurations rg --type gradle -A 10 "task\\('testOn17'|task\\('testOn19'"
Length of output: 660
iso20022-core/src/test/java/com/prowidesoftware/swift/model/mx/adapters/MxWriteAdaptersTest.java (6)
35-80
: Comprehensive Test: Date-Time Propagation Without Fractional Seconds.This test method effectively verifies the propagation of date-time values without fractional seconds. It covers XML content checks and ensures data consistency.
82-133
: Comprehensive Test: Date-Time Propagation in UTC.This test method effectively verifies the propagation of date-time values in UTC, ensuring correct XML content and data consistency.
135-187
: Comprehensive Test: Date-Time Propagation with Fractional Seconds.This test method effectively verifies the propagation of date-time values with fractional seconds, ensuring correct XML content and data consistency.
189-235
: Comprehensive Test: Custom Date-Time Patterns.This test method effectively verifies the application and propagation of custom date-time patterns, ensuring correct XML content.
237-253
: Comprehensive Test: Custom Date and Date-Time Adapters.This test method effectively verifies the application and propagation of custom date and date-time adapters, ensuring correct XML content.
255-267
: Comprehensive Test: Date-Time Propagation in Application Headers.This test method effectively verifies the propagation of date-time values in application headers, ensuring correct XML content and data consistency.
iso20022-core/src/main/java/com/prowidesoftware/swift/model/MxSwiftMessage.java (1)
21-21
: Transition to Jakarta Persistence API: Ensure Compatibility.The import statement has been updated to use
jakarta.persistence
. Ensure that all persistence-related code is compatible with Jakarta EE and that nojavax.persistence
references remain.Verification successful
Transition to Jakarta Persistence API Verified
The codebase does not contain any references to
javax.persistence
, indicating that the transition tojakarta.persistence
is complete. No further action is required.Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify compatibility of the transition to `jakarta.persistence`. # Test: Search for any `javax.persistence` usage that might need updating. rg --type java 'javax\.persistence'
Length of output: 37
iso20022-core/src/main/java/com/prowidesoftware/swift/model/mx/AbstractMX.java (4)
263-264
: Refactor: Centralize Gson configuration.The
fromJson(String json, Class<T> classOfT)
method now uses a centralized Gson builder configuration. This change improves maintainability by ensuring that all Gson configurations are managed in one place.
275-276
: Refactor: Centralize Gson configuration.The
fromJson(String json)
method now uses the centralized Gson builder configuration. This change ensures consistency in JSON deserialization across the application.
630-632
: Refactor: Centralize Gson configuration.The
toJson()
method now uses the centralized Gson builder configuration. This change enhances maintainability by reducing redundancy in Gson setup.
635-646
: Enhancement: Add type adapters for Java 8 date and time classes.The
getGsonBuilderWithCustomAdapters()
method includes type adapters forOffsetDateTime
,OffsetTime
,LocalDate
,Year
, andYearMonth
. This enhancement improves JSON handling for date and time data, which is crucial for financial applications.iso20022-core/src/test/java/com/prowidesoftware/swift/model/mx/MxReadImplTest.java (2)
134-135
: Enhancement: Use ChronoField for date handling.The use of
ChronoField.YEAR
andChronoField.MONTH_OF_YEAR
enhances clarity and consistency in date manipulation, aligning with modern Java time API standards.
637-637
: Improvement: Use ISO date format in test data.The change to use
2013-01-03
as the date format in thetestrReadFxtr
method aligns with ISO standards, improving readability and consistency in test data.iso20022-core/src/test/java/com/prowidesoftware/swift/model/mx/AbstractMxJsonTestAdapters.java (16)
34-75
: Comprehensive JSON conversion test for MxPain00100108.The test method
testMxPain00100108_toJson_fromJson_With_OffsetDateTime
thoroughly checks the JSON conversion process for theMxPain00100108
class. It covers various fields and ensures that the serialization and deserialization processes are consistent.
102-129
: Comprehensive JSON conversion test for MxCamt05300106.The test method
testMxCamt05300106_toJson_fromJson_With_OffsetDateTime
effectively verifies the JSON conversion process for theMxCamt05300106
class. It tests multiple account statements, ensuring that the serialization and deserialization processes are consistent and robust.
141-178
: Effective JSON conversion test with OffsetDateTime.The test method
testMxDateTimeJson_OffsetDateTime
successfully verifies the JSON conversion process for anAbstractMX
object withOffsetDateTime
fields. The assertions ensure that the serialized and deserialized JSON match the original input, confirming correct handling of date-time fields.
180-262
: Robust JSON conversion test with LocalDate and OffsetDateTime.The test method
testMxLocalDateJson_LocalDate_OffsetDateTime
effectively verifies the JSON conversion process for anAbstractMX
object withLocalDate
andOffsetDateTime
fields. The assertions ensure that the serialized and deserialized JSON match the original input, confirming correct handling of date and time fields.
264-285
: Accurate serialization and parsing test with LocalDate.The test method
testMxDateJsonSerializeAndParse_LocalDate
accurately verifies the serialization and parsing process from XML to JSON for anAbstractMX
object withLocalDate
fields. The assertions confirm that the serialized and deserialized JSON match the original input, ensuring correct handling of date fields.
287-343
: Successful parsing test with LocalDate and application headers.The test method
parseMxWithAppHdr_LocalDate
successfully verifies the parsing process for anAbstractMX
object from JSON, focusing onLocalDate
and application headers. The use ofassertDoesNotThrow
ensures that the parsing process is robust and error-free.
345-409
: Consistent parsing and serialization test with OffsetDateTime.The test method
parseSerializedMxWithAppHdr_OffsetDateTime
consistently verifies the parsing and serialization process for anAbstractMX
object withOffsetDateTime
and application headers. The assertions confirm that the serialized and deserialized objects are equal, ensuring correct handling of date-time fields and headers.
411-479
: Comprehensive parsing and serialization test with BusinessAppHdrV01.The test method
parseSerializedMxWithAppHdrBAH_V1_OffsetDateTime
comprehensively verifies the parsing and serialization process for anAbstractMX
object withOffsetDateTime
andBusinessAppHdrV01
. The assertions confirm that the serialized and deserialized objects are equal and that the application header is correctly handled.
481-549
: Comprehensive parsing and serialization test with BusinessAppHdrV02.The test method
parseSerializedMxWithAppHdrBAH_V2_OffsetDateTime
comprehensively verifies the parsing and serialization process for anAbstractMX
object withOffsetDateTime
andBusinessAppHdrV02
. The assertions confirm that the serialized and deserialized objects are equal and that the application header is correctly handled.
551-619
: Robust parsing and serialization test with legacy application header.The test method
parseSerializedMxWithAppHdrNoNameSpace_OffsetDateTime
robustly verifies the parsing and serialization process for anAbstractMX
object withOffsetDateTime
and a legacy application header without a namespace. The assertions confirm that the serialized and deserialized objects are equal and that the legacy header is correctly handled.
621-772
: Thorough parsing and serialization test with invalid namespace.The test method
parseSerializedMxWithAppHdrInvalidNamespace_OffsetDateTime
thoroughly verifies the parsing and serialization process for anAbstractMX
object withOffsetDateTime
and an application header with an invalid namespace. The assertions confirm that the serialized and deserialized objects are equal, ensuring robust handling of headers with invalid namespaces.
774-838
: Effective JSON conversion test with LocalDate and BusinessAppHdrV02.The test method
testJSON_With_LocalDate
effectively verifies the JSON conversion process for anAbstractMX
object withLocalDate
andBusinessAppHdrV02
. The assertions confirm that the serialized and deserialized objects are equal and that the application header is correctly handled.
840-954
: Comprehensive JSON conversion test with multiple date-time formats.The test method
testJSON_With_LocalDate_OffsetDateTime_OffsetTime
comprehensively verifies the JSON conversion process for anAbstractMX
object withLocalDate
,OffsetDateTime
, andOffsetTime
. The assertions confirm that the serialized and deserialized objects are equal and that the application header is correctly handled.
956-1058
: Robust JSON conversion test with LocalDate and OffsetTime without offset.The test method
testJSON_With_LocalDate_OffsetTimeWithNoOffset
robustly verifies the JSON conversion process for anAbstractMX
object withLocalDate
andOffsetTime
without an offset. The assertions confirm that the serialized and deserialized objects are equal and that the application header is correctly handled.
1060-1158
: Thorough JSON conversion test with minimal date-time details.The test method
testJSONOffsetDateTimeWithNoNano_TimeWithNoNanoNoOffset
thoroughly verifies the JSON conversion process for anAbstractMX
object withOffsetDateTime
andOffsetTime
without nanoseconds or offsets. The assertions confirm that the serialized and deserialized objects are equal and that the application header is correctly handled.
1160-1274
: Comprehensive JSON conversion test with YearMonth.The test method
testJSONYearMonth
comprehensively verifies the JSON conversion process for anAbstractMX
object withYearMonth
and other date-time fields. The assertions confirm that the serialized and deserialized objects are equal and that the application header is correctly handled.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00600104.java (3)
10-14
: Migration to Jakarta EE imports approved.The transition from
javax.xml.bind
tojakarta.xml.bind
is appropriate for aligning with Jakarta EE standards.
36-42
: Static field declaration order approved.Reordering to
public static final
is a stylistic improvement that aligns with Java conventions.
165-178
: Reintroduction oftoString
,equals
, andhashCode
methods approved.The use of Apache Commons Lang for these methods is appropriate for reflection-based implementation.
model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00600105.java (3)
10-14
: Migration to Jakarta EE imports approved.The transition from
javax.xml.bind
tojakarta.xml.bind
is appropriate for aligning with Jakarta EE standards.
36-42
: Static field declaration order approved.Reordering to
public static final
is a stylistic improvement that aligns with Java conventions.
165-178
: Reintroduction oftoString
,equals
, andhashCode
methods approved.The use of Apache Commons Lang for these methods is appropriate for reflection-based implementation.
model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00400101.java (3)
10-14
: Migration to Jakarta EE imports approved.The transition from
javax.xml.bind
tojakarta.xml.bind
is appropriate for aligning with Jakarta EE standards.
36-42
: Static field declaration order approved.Reordering to
public static final
is a stylistic improvement that aligns with Java conventions.
165-178
: Reintroduction oftoString
,equals
, andhashCode
methods approved.The use of Apache Commons Lang for these methods is appropriate for reflection-based implementation.
model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00500102.java (3)
10-14
: Transition to Jakarta EE imports.The transition from
javax.xml.bind
tojakarta.xml.bind
is appropriate and aligns with the move to Jakarta EE. Ensure that all dependencies are updated to support Jakarta EE.
36-42
: Reorder of access modifiers.The change from
public final static
topublic static final
is a minor stylistic improvement that aligns with Java conventions. This change does not affect functionality.
161-178
: Reintroduction of standard methods.The
toString
,equals
, andhashCode
methods are correctly implemented using Apache Commons Lang utilities, which is a good practice for consistent and reliable implementations.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00500103.java (3)
10-14
: Transition to Jakarta EE imports.The transition from
javax.xml.bind
tojakarta.xml.bind
is appropriate and aligns with the move to Jakarta EE. Ensure that all dependencies are updated to support Jakarta EE.
36-42
: Reorder of access modifiers.The change from
public final static
topublic static final
is a minor stylistic improvement that aligns with Java conventions. This change does not affect functionality.
161-178
: Reintroduction of standard methods.The
toString
,equals
, andhashCode
methods are correctly implemented using Apache Commons Lang utilities, which is a good practice for consistent and reliable implementations.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00500104.java (3)
10-14
: Transition to Jakarta EE imports.The transition from
javax.xml.bind
tojakarta.xml.bind
is appropriate and aligns with the move to Jakarta EE. Ensure that all dependencies are updated to support Jakarta EE.
36-42
: Reorder of access modifiers.The change from
public final static
topublic static final
is a minor stylistic improvement that aligns with Java conventions. This change does not affect functionality.
161-178
: Reintroduction of standard methods.The
toString
,equals
, andhashCode
methods are correctly implemented using Apache Commons Lang utilities, which is a good practice for consistent and reliable implementations.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00700101.java (3)
10-14
: Approved: Transition to Jakarta EE imports.The change from
javax.xml.bind.annotation
tojakarta.xml.bind.annotation
aligns with the Jakarta EE specifications. Ensure that the rest of the codebase is compatible with this transition.
36-42
: Verify the removal offinal
from static variables.The
final
keyword has been removed from static variables, which affects their immutability. Ensure that this change is intentional and does not lead to unintended side effects.
161-178
: Approved: Method reordering andfromJson
modification.The reordering of methods enhances readability. The removal of
final
fromfromJson
may affect subclassing. Verify if this change is aligned with the intended design.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00600107.java (4)
36-42
: Standardize static field declarations.The static fields have been reordered from
public final static
topublic static final
. This is a stylistic change that aligns with Java conventions. It does not affect functionality but improves code readability.
165-178
: Reorganize overridden methods.The
toString
,equals
, andhashCode
methods have been reorganized. This grouping improves readability and maintainability by keeping related methods together.
10-14
: Transition to Jakarta EE.The import statements have been updated from
javax.xml.bind.annotation.*
tojakarta.xml.bind.annotation.*
. This is necessary for compatibility with Jakarta EE. Ensure that all dependencies and environments support Jakarta EE.Verification successful
Jakarta EE Transition Verified
All imports from
javax.xml.bind.annotation
have been successfully updated tojakarta.xml.bind.annotation
, ensuring compatibility with Jakarta EE. No instances of the old imports were found in the codebase.Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Verify that all imports from `javax.xml.bind.annotation` have been updated to `jakarta.xml.bind.annotation`. rg --type java 'javax.xml.bind.annotation' -A 0
Length of output: 47
161-161
: Adjust method declaration for extensibility.The
fromJson
method has been changed frompublic final static
topublic static
. This allows for potential overriding in subclasses, enhancing extensibility. Verify if this change aligns with the intended design.Verification successful
Method declaration change aligns with current design.
The
fromJson
method's change topublic static
does not currently affect any subclass overrides, as there are no subclasses ofMxAcmt00600107
implementing this method. This adjustment aligns with the current design.Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Verify if the `fromJson` method is overridden in any subclasses. ast-grep --lang java --pattern $'class $_ extends MxAcmt00600107 { $$$ public static MxAcmt00600107 fromJson($_) { $$$ } $$$ }'
Length of output: 128
Script:
#!/bin/bash # Find all subclasses of MxAcmt00600107 ast-grep --lang java --pattern 'class $_ extends MxAcmt00600107 { $$$ }' # Check if any of these subclasses override the fromJson method ast-grep --lang java --pattern 'class $_ extends MxAcmt00600107 { $$$ public static MxAcmt00600107 fromJson($_) { $$$ } $$$ }'
Length of output: 203
model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00200101.java (3)
36-42
: Standardize static field declarations.The static fields have been reordered from
public final static
topublic static final
, aligning with Java conventions. This improves code readability without affecting functionality.
165-178
: Reorganize overridden methods.The
toString
,equals
, andhashCode
methods have been reorganized. This grouping improves readability and maintainability by keeping related methods together.
161-161
: Adjust method declaration for extensibility.The
fromJson
method has been changed frompublic final static
topublic static
. This allows for potential overriding in subclasses, enhancing extensibility. Verify if this change aligns with the intended design.Verification successful
No subclasses found for
MxAcmt00200101
.The change from
public final static
topublic static
in thefromJson
method does not currently affect the codebase, as there are no subclasses ofMxAcmt00200101
present. This adjustment allows for potential future extensibility if subclassing becomes necessary.Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Verify if the `fromJson` method is overridden in any subclasses. ast-grep --lang java --pattern $'class $_ extends MxAcmt00200101 { $$$ public static MxAcmt00200101 fromJson($_) { $$$ } $$$ }'
Length of output: 128
Script:
#!/bin/bash # Search for any subclasses of MxAcmt00200101 ast-grep --lang java --pattern 'class $_ extends MxAcmt00200101 { $$$ }'
Length of output: 74
Script:
#!/bin/bash # Search for references to MxAcmt00200101 in the codebase to identify potential subclass locations. rg 'MxAcmt00200101'
Length of output: 4904
model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00200102.java (4)
36-42
: Standardize static field declarations.The static fields have been reordered from
public final static
topublic static final
, which aligns with Java conventions. This change enhances code readability without affecting functionality.
165-178
: Reorganize overridden methods.The
toString
,equals
, andhashCode
methods have been reorganized. This grouping improves readability and maintainability by keeping related methods together.
10-14
: Transition to Jakarta EE.The import statements have been updated from
javax.xml.bind.annotation.*
tojakarta.xml.bind.annotation.*
. This update is necessary for compatibility with Jakarta EE. Ensure that all dependencies and environments are compatible with Jakarta EE.
161-161
: Adjust method declaration for extensibility.The
fromJson
method has been changed frompublic final static
topublic static
. This allows for potential overriding in subclasses, enhancing extensibility. Verify if this change aligns with the intended design.Verification successful
No subclasses currently override the
fromJson
method.The change from
public final static
topublic static
allows for potential overriding, but as of now, no subclasses have taken advantage of this extensibility. This suggests the change is aligned with the intended design for future extensibility or consistency.
- No evidence of
fromJson
being overridden in subclasses.Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Verify if the `fromJson` method is overridden in any subclasses. ast-grep --lang java --pattern $'class $_ extends MxAcmt00200102 { $$$ public static MxAcmt00200102 fromJson($_) { $$$ } $$$ }'
Length of output: 128
model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00100101.java (1)
10-14
: Transition to Jakarta EE.The import statements have been updated to use the
jakarta.xml.bind
package, indicating a transition to Jakarta EE. Ensure compatibility with systems relying on the olderjavax.xml.bind
namespace.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00600106.java (1)
10-14
: Transition to Jakarta EE.The import statements have been updated to use the
jakarta.xml.bind
package, indicating a transition to Jakarta EE. Ensure compatibility with systems relying on the olderjavax.xml.bind
namespace.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00300102.java (1)
10-14
: Transition to Jakarta EE.The import statements have been updated to use the
jakarta.xml.bind
package, indicating a transition to Jakarta EE. Ensure compatibility with systems relying on the olderjavax.xml.bind
namespace.model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00100103.java (4)
10-14
: Transition to Jakarta XML Bind Annotations.The import statements have been updated from
javax.xml.bind
tojakarta.xml.bind
, which aligns with the transition from Java EE to Jakarta EE. This is a necessary change for compatibility with newer Java versions.
36-42
: Standardize Static Field Modifiers.The order of modifiers for static fields has been standardized from
final static
tostatic final
. This is a stylistic change that improves readability and consistency with Java conventions.
161-161
: Removal offinal
Modifier fromfromJson
Method.The
final
modifier has been removed from thefromJson
method, allowing for potential overriding in subclasses. This change enhances extensibility.
165-178
: Reintroduction oftoString
,equals
, andhashCode
Methods.These methods have been reintroduced, providing standard object behavior for debugging and collections. Their implementation using reflection is common, but be aware of potential performance implications.
Consider verifying if these methods are performance-critical in your application, as reflection can be slower than direct field access.
model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00300103.java (4)
10-14
: Transition to Jakarta XML Bind Annotations.The import statements have been updated to
jakarta.xml.bind
, reflecting the transition to Jakarta EE. This change is necessary for compatibility with newer Java versions.
36-42
: Standardize Static Field Modifiers.The static field modifiers have been standardized from
final static
tostatic final
. This change improves code readability and follows Java conventions.
161-161
: Removal offinal
Modifier fromfromJson
Method.The
final
modifier has been removed from thefromJson
method, allowing for potential subclass overrides. This enhances the method's extensibility.
165-178
: Reintroduction oftoString
,equals
, andhashCode
Methods.These methods have been reintroduced, providing essential object behavior. Consider potential performance implications due to reflection.
Consider verifying if these methods are performance-critical, as reflection can impact performance.
model-acmt-mx/src/generated/java/com/prowidesoftware/swift/model/mx/MxAcmt00200106.java (4)
10-14
: Transition to Jakarta XML Bind Annotations.The import statements have been updated to
jakarta.xml.bind
, aligning with the transition to Jakarta EE. This is necessary for compatibility with newer Java versions.
36-42
: Standardize Static Field Modifiers.The static field modifiers have been standardized from
final static
tostatic final
. This change improves code readability and adheres to Java conventions.
161-161
: Removal offinal
Modifier fromfromJson
Method.The
final
modifier has been removed from thefromJson
method, allowing for potential subclass overrides. This enhances the method's extensibility.
165-178
: Reintroduction oftoString
,equals
, andhashCode
Methods.These methods have been reintroduced, providing essential object behavior. Consider potential performance implications due to reflection.
Consider verifying if these methods are performance-critical, as reflection can impact performance.
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?
Tips
Chat
There are 3 ways to chat with CodeRabbit:
- Review comments: Directly reply to a review comment made by CodeRabbit. Example:
-
I pushed a fix in commit <commit_id>.
-
Generate unit testing code for this file.
-
Open a follow-up GitHub issue for this discussion.
-
- Files and specific lines of code (under the "Files changed" tab): Tag
@coderabbitai
in a new review comment at the desired location with your query. Examples:-
@coderabbitai generate unit testing code for this file.
-
@coderabbitai modularize this function.
-
- PR comments: Tag
@coderabbitai
in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:-
@coderabbitai generate interesting stats about this repository and render them as a table.
-
@coderabbitai show all the console.log statements in this repository.
-
@coderabbitai read src/utils.ts and generate unit testing code.
-
@coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
-
@coderabbitai help me debug CodeRabbit configuration file.
-
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.
CodeRabbit Commands (invoked as PR comments)
-
@coderabbitai pause
to pause the reviews on a PR. -
@coderabbitai resume
to resume the paused reviews. -
@coderabbitai review
to trigger an incremental review. This is useful when automatic reviews are disabled for the repository. -
@coderabbitai full review
to do a full review from scratch and review all the files again. -
@coderabbitai summary
to regenerate the summary of the PR. -
@coderabbitai resolve
resolve all the CodeRabbit review comments. -
@coderabbitai configuration
to show the current CodeRabbit configuration for the repository. -
@coderabbitai help
to get help.
Additionally, you can add @coderabbitai ignore
anywhere in the PR description to prevent this PR from being reviewed.
CodeRabbit Configuration File (.coderabbit.yaml
)
- You can programmatically configure CodeRabbit by adding a
.coderabbit.yaml
file to the root of your repository. - Please see the configuration documentation for more information.
- If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation:
# yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json
Documentation and Community
- Visit our Documentation for detailed information on how to use CodeRabbit.
- Join our Discord Community to get help, request features, and share feedback.
- Follow us on X/Twitter for updates and announcements.