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} interface 008 * with {@link #isMoreAvailable()} flag. This indicates that the original {@link java.util.Collection} 009 * provides more data than the current {@link io.cui.tools.collect.PartialCollection}. It defines the lower bound for the 010 * contained types to {@link java.io.Serializable}. Currently, the only implementation is 011 * {@link io.cui.tools.collect.PartialArrayList}. It provides convenient methods for instantiation, like 012 * {@link io.cui.tools.collect.PartialArrayList#of(java.util.List, int)} 013 * 014 * @param <T> the type of the entity 015 * @author oliver 016 */ 017public interface PartialCollection<T extends Serializable> extends Collection<T>, Serializable { 018 019 /** 020 * <p>isMoreAvailable.</p> 021 * 022 * @return {@code true} if more entities are available and ignored due to the given limit. 023 */ 024 boolean isMoreAvailable(); 025 026}