org.springframework.batch.core.configuration.support

## Class MapJobRegistry

- java.lang.Object
- - org.springframework.batch.core.configuration.support.MapJobRegistry

- All Implemented Interfaces:
    JobLocator, JobRegistry, ListableJobLocator

      public class MapJobRegistry
      extends java.lang.Object
      implements JobRegistry

  Simple, thread-safe, map-based implementation of `JobRegistry`.
  Author:
    Dave Syer, Robert Fischer

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `MapJobRegistry()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `Job` | `getJob(java.lang.String name)` Locates a `Job` at runtime.
    `java.util.Set<java.lang.String>` | `getJobNames()` Provides an unmodifiable view of the job names.
    `void` | `register(JobFactory jobFactory)` Registers a `Job` at runtime.
    `void` | `unregister(java.lang.String name)` Unregisters a previously registered `Job`.

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

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

- - ### Constructor Detail

    - #### MapJobRegistry

          public MapJobRegistry()

  - ### Method Detail

    - #### register

          public void register(JobFactory jobFactory)
                        throws DuplicateJobException

      Description copied from interface: `JobRegistry`
      Registers a `Job` at runtime.
      Specified by:
        `register` in interface `JobRegistry`
      Parameters:
        `jobFactory` - the `Job` to be registered
      Throws:
        `DuplicateJobException` - if a factory with the same job name has already been registered.

    - #### unregister

          public void unregister(java.lang.String name)

      Description copied from interface: `JobRegistry`
      Unregisters a previously registered `Job`. If it was not previously registered there is no error.
      Specified by:
        `unregister` in interface `JobRegistry`
      Parameters:
        `name` - the `Job` to unregister.

    - #### getJob

          public Job getJob(java.lang.String name)
                     throws NoSuchJobException

      Description copied from interface: `JobLocator`
      Locates a `Job` at runtime.
      Specified by:
        `getJob` in interface `JobLocator`
      Parameters:
        `name` - the name of the `Job` which should be unique
      Returns:
        a `Job` identified by the given name
      Throws:
        `NoSuchJobException` - if the required configuration can not be found.

    - #### getJobNames

          public java.util.Set<java.lang.String> getJobNames()

      Provides an unmodifiable view of the job names.
      Specified by:
        `getJobNames` in interface `ListableJobLocator`
      Returns:
        a collection of String. Empty if none are registered.