View Javadoc

1   package com.atlassian.johnson;
2   
3   import java.util.Map;
4   
5   /**
6    * When implementing Johnson interfaces, this secondary interface can also be implemented to indicate the object needs
7    * additional initialisation.
8    * <p/>
9    * This interface can be applied to implementations of:
10   * <ul>
11   *     <li>{@link com.atlassian.johnson.setup.ContainerFactory ContainerFactory}</li>
12   *     <li>{@link com.atlassian.johnson.event.EventCheck EventCheck} (and its derived interfaces)</li>
13   *     <li>{@link com.atlassian.johnson.setup.SetupConfig SetupConfig}</li>
14   * </ul>
15   * This interface is applied by the {@link com.atlassian.johnson.config.JohnsonConfig JohnsonConfig} implementation
16   * which is being used. For exact details on its semantics, review the documentation for that class as well.
17   */
18  public interface Initable
19  {
20      /**
21       * Initialise the object, optionally drawing configuration from the provided {@code Map}. The provided map may be
22       * empty, if no parameters were configured, but it will never be {@code null}.
23       *
24       * @param params a map of additional parameters loaded from the configuration file
25       */
26      public void init(Map<String, String> params);
27  }