FIT-Co Java SDK
Project Setup Info
- Java 17 (LTS)
- Maven
- Junit 5
Build
To build the maven artifact, run: mvn clean install
To run all tests, run: mvn test
Modules
The SDk is set up as a maven multi module to separate the (internal) API properly from implementation details
API Module
The api module consists of all domain model classes and (api-) public interfaces needed to build an sdk-client
API Architecture
Structure
classDiagram
class DecryptionService{
+ decryptString
+ decryptBytes
}
class EncryptionService{
+ encryptString
+ encryptBytes
}
class CryptoService{
}
class CertificateValidator{
+ validatePublicKey
}
class MetadataValidator{
+ validateMetadataSchema
+ validateMetadataHashValues
}
class MetadataService{
+ createMetadata
}
class OAuthService{
+ authenticate
}
class SubmissionSender{
OAuthService
EncryptionService
CertificateValidator
MetadataService
}
class SubmissionSubscriber{
OAuthService
DecryptionService
MetadataValidator
}
class FitCoClient{
ClientFactory
}
FitCoClient ..> ClientFactory : Uses
ClientFactory ..> SubmissionSender : Creates
ClientFactory ..> SubmissionSubscriber : Creates
SubmissionSender ..> CertificateValidator : Implements
SubmissionSender ..> EncryptionService : Implements
SubmissionSender ..> MetadataService : Implements
SubmissionSender ..> OAuthService : Implements
SubmissionSubscriber ..> OAuthService : Implements
SubmissionSubscriber ..> DecryptionService : Implements
SubmissionSubscriber ..> MetadataValidator : Implements
DecryptionService ..> CryptoService : IsA
EncryptionService ..> CryptoService : IsA
Client Module
API implementations and Tests
Documentation
https://docs.fitko.de/fit-connect/docs/