Package 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 Object implements JobRegistry
Simple, thread-safe, map-based implementation of `JobRegistry`.

Author:
  Dave Syer, Robert Fischer, Mahmoud Ben Hassine

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `MapJobRegistry()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Job`
  `getJob(String name)`
  Locates a `Job` at runtime.
  `Set<String>`
  `getJobNames()`
  Provides an unmodifiable view of the job names.
  `void`
  `register(JobFactory jobFactory)`
  Registers a `Job` at runtime.
  `void`
  `unregister(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 Details

  - ### MapJobRegistry

    public MapJobRegistry()

- ## Method Details

  - ### 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(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(@Nullable 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 Set<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.