001package io.cui.tools.collect; 002 003import java.io.Serializable; 004import java.util.Collection; 005 006/** 007 * Represents a partial collection / sub-collection. It extends the {@link java.util.Collection} 008 * interface 009 * with {@link #isMoreAvailable()} flag. This indicates that the original 010 * {@link java.util.Collection} 011 * provides more data than the current {@link io.cui.tools.collect.PartialCollection}. It defines 012 * the lower bound for the 013 * contained types to {@link java.io.Serializable}. Currently, the only implementation is 014 * {@link io.cui.tools.collect.PartialArrayList}. It provides convenient methods for instantiation, 015 * like 016 * {@link io.cui.tools.collect.PartialArrayList#of(java.util.List, int)} 017 * 018 * @param <T> the type of the entity 019 * @author oliver 020 */ 021public interface PartialCollection<T extends Serializable> extends Collection<T>, Serializable { 022 023 /** 024 * <p> 025 * isMoreAvailable. 026 * </p> 027 * 028 * @return {@code true} if more entities are available and ignored due to the given limit. 029 */ 030 boolean isMoreAvailable(); 031 032}