[ 
https://issues.apache.org/jira/browse/IGNITE-14745?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Sergey Chugunov updated IGNITE-14745:
-------------------------------------
    Description: 
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}

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.

  was:
Introduce basic Storage API described in 
[IEP-74|https://cwiki.apache.org/confluence/display/IGNITE/IEP-74+Data+Storage] 
in a separate module.

Implement basic configuration that is expected to be common for any Storage 
implementation.


> 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
>            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}
> 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)

Reply via email to