1. /*
  2. * Copyright 2002-2004 The Apache Software Foundation
  3. *
  4. * Licensed under the Apache License, Version 2.0 (the "License");
  5. * you may not use this file except in compliance with the License.
  6. * You may obtain a copy of the License at
  7. *
  8. * http://www.apache.org/licenses/LICENSE-2.0
  9. *
  10. * Unless required by applicable law or agreed to in writing, software
  11. * distributed under the License is distributed on an "AS IS" BASIS,
  12. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  13. * See the License for the specific language governing permissions and
  14. * limitations under the License.
  15. */
  16. package org.apache.commons.collections;
  17. import java.util.Collection;
  18. /**
  19. * Defines a collection that is bounded in size.
  20. * <p>
  21. * The size of the collection can vary, but it can never exceed a preset
  22. * maximum number of elements. This interface allows the querying of details
  23. * associated with the maximum number of elements.
  24. *
  25. * @see CollectionUtils#isFull
  26. * @see CollectionUtils#maxSize
  27. *
  28. * @since Commons Collections 3.0
  29. * @version $Revision: 1.11 $ $Date: 2004/04/14 20:13:11 $
  30. *
  31. * @author Herve Quiroz
  32. * @author Stephen Colebourne
  33. */
  34. public interface BoundedCollection extends Collection {
  35. /**
  36. * Returns true if this collection is full and no new elements can be added.
  37. *
  38. * @return <code>true</code> if the collection is full
  39. */
  40. boolean isFull();
  41. /**
  42. * Gets the maximum size of the collection (the bound).
  43. *
  44. * @return the maximum number of elements the collection can hold
  45. */
  46. int maxSize();
  47. }