Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
languagejava
titleorg.apache.kafka.clients.admin
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();
}

...