[
https://issues.apache.org/jira/browse/IGNITE-14745?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Ivan Bessonov reassigned IGNITE-14745:
--------------------------------------
Assignee: Ivan Bessonov
> Storage API and basic configuration module
> ------------------------------------------
>
> Key: IGNITE-14745
> URL: https://issues.apache.org/jira/browse/IGNITE-14745
> Project: Ignite
> Issue Type: Task
> Reporter: Sergey Chugunov
> Assignee: Ivan Bessonov
> Priority: Major
> Labels: iep-74, ignite-3
> Fix For: 3.0
>
>
> Introduce basic Storage API described in
> [IEP-74|https://cwiki.apache.org/confluence/display/IGNITE/IEP-74+Data+Storage]
> in a separate module.
> For now Storage API should contain only four basic methods to read, update
> and remove keys from Storage and to iterate over available keys:
> {code:java}
> /** Interface providing methods to read, remove and update keys in storage. */
> public interface Storage {
> /** Reads a DataRow for a given Key. */
> public DataRow read(Key key);
>
> /** Removes DataRow associated with a given Key. */
> public void remove(Key key);
>
> /** Executes an update with custom logic implemented by UpdateClosure
> interface. */
> public update(Key key, UpdateClosure clo);
>
> /** Obtains Iterator over some DataRows in storage. */
> public Iterator<DataRow> iterator(/* parameters */).
> }
> {code}
> This simplistic API is based on IgniteCacheOffheapManager from existing code
> base of Ignite 2.x. Only essential methods were left for the initial version
> of interface but it obviously will be refined during development.
> Details about some classes like Key or UpdateClosure are not clear yet and
> can be omitted (basic stub classes may be used).
> Implement basic configuration that is expected to be common for any Storage
> implementation.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)