Package be.ehealth.technicalconnector.config.impl

# Class ConfigurationModuleSecurityProvider

java.lang.Object
be.ehealth.technicalconnector.config.impl.ConfigurationModuleSecurityProvider

All Implemented Interfaces:
  `ConfigurationModule`

public class ConfigurationModuleSecurityProvider extends Object implements ConfigurationModule
Security Provider Configuration Module. Implementation of `ConfigurationModule`

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final String`
  `PROP_ADD_SECURITYPROVIDERS_ACTIVATED`
  Property containing the flag if this module must add the security providers specified in the config file.
  `static final String`
  `PROP_ADD_SECURITYPROVIDERS_POSITION_KEY`
  Property containing the position on where the new `Provider` must be added.
  `static final String`
  `PROP_ADD_SECURITYPROVIDERS_ROOTKEY`
  Property containing the fully qualified name of all the providers that must be added.
  `static final String`
  `PROP_CLEANUP_ACTION_KEY`
  Property to indicate what cleanup action must be executed.
  `static final String`
  `PROP_CLEANUP_ACTION_PARTIAL_ROOTKEY`
  Property containing all the providers names that must be removed.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `ConfigurationModuleSecurityProvider()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `init(Configuration config)`
  If debug is enabled, list the available security providers.
  `void`
  `unload()`
  Method that restores the configuration module and reset the system to the initial situation.

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

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

- ## Field Details

  - ### PROP_CLEANUP_ACTION_KEY

    public static final String PROP_CLEANUP_ACTION_KEY
    Property to indicate what cleanup action must be executed.

    There are 3 possible values: none, full, partial.

  - none: the default security providers are used.
  - full: the default securtiy providers are ALL removed.
  - partial the default security providers listed in the properties starting with `PROP_CLEANUP_ACTION_KEY`

See Also:
  - Constant Field Values

- ### PROP_CLEANUP_ACTION_PARTIAL_ROOTKEY

  public static final String PROP_CLEANUP_ACTION_PARTIAL_ROOTKEY
  Property containing all the providers names that must be removed.

  The properties must start with `PROP_CLEANUP_ACTION_PARTIAL_ROOTKEY` followed by a unique increasing number, Starting with 1 and gaps are not allowed.

  See Also:
    - Constant Field Values

- ### PROP_ADD_SECURITYPROVIDERS_ROOTKEY

  public static final String PROP_ADD_SECURITYPROVIDERS_ROOTKEY
  Property containing the fully qualified name of all the providers that must be added.

  The properties must start with `PROP_ADD_SECURITYPROVIDERS_ROOTKEY` followed by a unique increasing number, Starting with 1 and gaps are not allowed.

  See Also:
    - Constant Field Values

- ### PROP_ADD_SECURITYPROVIDERS_ACTIVATED

  public static final String PROP_ADD_SECURITYPROVIDERS_ACTIVATED
  Property containing the flag if this module must add the security providers specified in the config file.

  There are 3 possible values:

- property not present: possibility to be backwards compatible with the older version ( `BeIDProvider` and `BouncyCastleProvider` are added.)
- true: the providers specified in property `PROP_ADD_SECURITYPROVIDERS_ROOTKEY` are added.
- false: no providers are added.

See Also:
  - Constant Field Values

- ### PROP_ADD_SECURITYPROVIDERS_POSITION_KEY

  public static final String PROP_ADD_SECURITYPROVIDERS_POSITION_KEY
  Property containing the position on where the new `Provider` must be added.

  There are 3 possibilities: begin, end and the correct position to insert.

- begin: every provider to add will be added at position 1.
- end: every provider to add will be added at the end of the security provider list.(default option)
- correct position: every provider will be added on the position specified (this must be a numeric value)
  See Also:
    - Constant Field Values

- ## Constructor Details

  - ### ConfigurationModuleSecurityProvider

    public ConfigurationModuleSecurityProvider()

- ## Method Details

  - ### init

    public void init(Configuration config)
    If debug is enabled, list the available security providers.
    Specified by:
      `init` in interface `ConfigurationModule`
    Parameters:
      `config` -
    See Also:
      - `ConfigurationModule.init(be.ehealth.technicalconnector.config.Configuration)`

  - ### unload

    public void unload() throws TechnicalConnectorException
    Description copied from interface: `ConfigurationModule`
    Method that restores the configuration module and reset the system to the initial situation.
    Specified by:
      `unload` in interface `ConfigurationModule`
    Throws:
      `TechnicalConnectorException`
    See Also:
      - `ConfigurationModule.unload()`