Architecture

Edit
Update time: 2019-06-21

## Architecture diagram Jarslink 2.0 is an Ark plugin and needs to depend on the SOFAArk container at runtime. Jarslink 2.0 is in the middle layer between the applications and the containers at runtime. Boundary interaction mode: + 1. Application boundaries: Jarslink 2.0 configures export classes that can be directly used by the applications. Such classes are loaded by Jarslink at runtime. + 2. Container boundaries: The Ark plugin can interact with the SOFAArk container by using the exposed extension points and services. Jarslink expanded the BizDeployer implementation and referenced BizManagerService and BizFactoryService container services.

jarslink-structure

Module division

The implementation classes of each module appear only in their own modules and are generally not cross-dependent. Required cross-dependencies will be moved into the core module. Detailed module descriptions can be found in the following table:

Module name Sub-module name Description Dependency relationship
bom Dependent on version control None
core common Common module with log classes None
core spi SPI module, defining basic interfaces and commands None
core-impl runtime Jarslink runtime management, processing commands Core
integration Ark plugin packaging module, implementing SOFAArk container service extension point and referencing container services All