Nikolay Izhikov created IGNITE-28717:
----------------------------------------
Summary: Extraction of thin client API to module
Key: IGNITE-28717
URL: https://issues.apache.org/jira/browse/IGNITE-28717
Project: Ignite
Issue Type: Epic
Reporter: Nikolay Izhikov
Assignee: Nikolay Izhikov
Currently, thin client api and implementation in ignite-core module.
It leads to the following disadvantages:
1. Thin client API use many internal ignite classes.
2. Thin client must be compiled to the same java version as ignite-core. We
can't easily update java version for server classes and keep thin client more
conserative.
3. Thin client depends on unsafe and can't be used without many --add-opens
flags.
4. User must have relatively huge ignite-core.jar in classpath to use thin
client.
To overcome this we want to:
1. Extract thin client API to module that don't depend on ignite-core.
2. Extract thin client implementation to module that don't depend on
ignite-core.
2. For thin client classes rewrite unsafe code to the public java API.
3. Prepare separate ignite-thin-client jar for users. This step need to be
clarified with backward compatibility in mind, after other work will be done.
This epic focused on the first sped - extraction of the API, e.g classes in
`org.apache.ignite.client` package.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)