001package com.identityworksllc.iiq.common.plugin;
002
003/**
004 * An interface to ensure that the BaseCommonPlugin* classes all implement the same methods
005 */
006public interface CommonExtendedPluginContext {
007
008        /**
009         * Gets the configuration setting from the default plugin Configuration object or else from the plugin settings
010         * @param settingName The setting to retrieve
011         * @return The setting value
012         */
013        boolean getConfigurationBool(String settingName);
014
015        /**
016         * Gets the configuration setting from the default plugin Configuration object or else from the plugin settings
017         * @param settingName The setting to retrieve
018         * @return The setting value
019         */
020        int getConfigurationInt(String settingName);
021
022        /**
023         * Gets the given configuration setting as an Object
024         * @param settingName The setting to retrieve as an Object
025         * @return The object
026         */
027        <T> T getConfigurationObject(String settingName);
028
029        /**
030         * Gets the configuration setting from the default plugin Configuration object or else from the plugin settings
031         * @param settingName The setting to retrieve
032         * @return The setting value
033         */
034        String getConfigurationString(String settingName);
035
036}