1   package com.atlassian.seraph;
2   
3   import com.atlassian.seraph.config.SecurityConfig;
4   
5   import java.util.Map;
6   
7   /**
8    * A simple interface to indicate all initialisable configuration classes in Seraph.
9    */
10  public interface Initable
11  {
12      /**
13       * Initialise the configuration object with the given "init-params".
14       *
15       * @param params The map of "init-params" extracted from the Seraph config file. This is guaranteed not null.
16       * @param config The Seraph SecurityConfig class that is initialising the config objects. This object will only be partially initialised at this time.
17       */
18      void init(Map<String, String> params, SecurityConfig config);
19  }