Kirill Tkalenko created IGNITE-17199:
----------------------------------------

             Summary: Improve the usability of the abstract configuration 
interface
                 Key: IGNITE-17199
                 URL: https://issues.apache.org/jira/browse/IGNITE-17199
             Project: Ignite
          Issue Type: Improvement
            Reporter: Kirill Tkalenko
            Assignee: Kirill Tkalenko
             Fix For: 3.0.0-alpha6


*Problem*
Consider an example of generating configuration interfaces (**Configuration*) 
for an abstract configuration.

Configuration schemas:
{code:java}
@AbstractConfiguration
public class BasePageMemoryDataRegionConfigurationSchema {
    @Value
    public int size;
}

@Config
public class VolatilePageMemoryDataRegionConfigurationSchema extends 
BasePageMemoryDataRegionConfigurationSchema {
    @Value
    public double evictionThreshold;
}
{code}


Configuration interfaces:
{code:java}
public interface BasePageMemoryDataRegionConfiguration<VIEWT extends 
BasePageMemoryDataRegionView, CHANGET extends BasePageMemoryDataRegionChange> 
extends ConfigurationTree<VIEWT, CHANGET> {
    ConfigurationValue<Integer> size();
}

public interface VolatilePageMemoryDataRegionConfiguration extends 
BasePageMemoryDataRegionConfiguration<VolatilePageMemoryDataRegionView, 
VolatilePageMemoryDataRegionChange> {
    ConfigurationValue<Integer> size();
}
{code}




--
This message was sent by Atlassian Jira
(v8.20.7#820007)

Reply via email to