org.apache.tapestry5.ioc.util

## Class IdAllocator

- java.lang.Object
- - org.apache.tapestry5.ioc.util.IdAllocator

-     public final class IdAllocator
      extends Object

  Used to "uniquify" names within a given context. A base name is passed in, and the return value is the base name, or the base name extended with a suffix to make it unique. This class is not threadsafe.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `IdAllocator()` Creates a new allocator with no namespace.
    `IdAllocator(String namespace)` Creates a new allocator with the provided namespace.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `String` | `allocateId(String name)` Allocates the id.
    `void` | `clear()` Clears the allocator, resetting it to freshly allocated state.
    `IdAllocator` | `clone()` Creates a clone of this IdAllocator instance, copying the allocator's namespace and key map.
    `List<String>` | `getAllocatedIds()` Returns a list of all allocated ids, sorted alphabetically.
    `boolean` | `isAllocated(String name)` Checks to see if a given name has been allocated.

    - ### Methods inherited from class java.lang.Object

      `equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### IdAllocator

          public IdAllocator()

      Creates a new allocator with no namespace.

    - #### IdAllocator

          public IdAllocator(String namespace)

      Creates a new allocator with the provided namespace.

  - ### Method Detail

    - #### getAllocatedIds

          public List<String> getAllocatedIds()

      Returns a list of all allocated ids, sorted alphabetically.

    - #### clone

          public IdAllocator clone()

      Creates a clone of this IdAllocator instance, copying the allocator's namespace and key map.
      Overrides:
        `clone` in class `Object`

    - #### allocateId

          public String allocateId(String name)

      Allocates the id. Repeated calls for the same name will return "name", "name_0", "name_1", etc.

    - #### isAllocated

          public boolean isAllocated(String name)

      Checks to see if a given name has been allocated.

    - #### clear

          public void clear()

      Clears the allocator, resetting it to freshly allocated state.

${project.version} - Copyright © 2003-2015 The Apache Software Foundation.