...
Code Block | ||||
---|---|---|---|---|
| ||||
public static class Quota { public QuotaType type(); public double value(); public QuotaSource source(); } public static enum QuotaType { PRDOUCER_BYTE_RATE(0), CONSUMER_BYTE_RATE(1), REQUEST_PERCENTAGE(2); QuotaType(byte id); public byte id(); } public static enum QuotaSource { SELF(0), DEFAULT(1), PARENT(2); QuotaSource(byte id); public byte id(); } /** * Represents a list of Resource objects that have a hierarchical relationship. * For instance one could represent relationship like "clientA of user1". */ public class ResourceList { public ResourceList(String user, String client); public ResourceList(ResourceType type, String resourceName); /** * Returns the list of resources in a top to bottom (first to last) order. */ public List<Resource> resources(); } /** * A helper class that makes sure that a given collection of Quota objects * are immutably stored and can be accessed. */ public class QuotaCollection { public QuotaCollection(Collection<Quota> entries); public Collection<Quota> entries(); } /** * This class acts as an alias for a HashMap that maps a list of Resource * objects which represents hierarchical */ public class QuotaResourceMap extends HashMap<ResourceList, T> { public QuotaResourceMap(ResourceList key, T value); public QuotaResourceMap(Map<ResourceList, T>); } public class AdminClient { public DescribeQuotasResult describeQuotas(QuotaResourceMap<Collection<QuotaType>>, DescribeQuotasOptions options); public AlterQuotasResult alterQuotas(QuotaResourceMap<QuotaCollection> configs, AlterQuotasOptions options); } public class DescribeQuotasOptions { public DescribeQuotasOptions timeoutMs(Integer timeout); } public class DescribeQuotasResult { public QuotaResourceMap<KafkaFuture<QuotaCollection>> values(); } public class AlterQuotasOptions { public AlterQuotasOptions timeoutMs(Integer timeout); public AlterQuotasOptions validateOnly(boolean validateOnly); } public class AlterQuotasResult { public QuotaResourceMap<KafkaFuture<Void>> results(); } |
...