/******************************************************************************* * Copyright 2017 Graz University of Technology * EAAF-Core Components has been developed in a cooperation between EGIZ, * A-SIT Plus, A-SIT, and Graz University of Technology. * * Licensed under the EUPL, Version 1.2 or - as soon they will be approved by * the European Commission - subsequent versions of the EUPL (the "Licence"); * You may not use this work except in compliance with the Licence. * You may obtain a copy of the Licence at: * https://joinup.ec.europa.eu/news/understanding-eupl-v12 * * Unless required by applicable law or agreed to in writing, software * distributed under the Licence is distributed on an "AS IS" basis, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the Licence for the specific language governing permissions and * limitations under the Licence. * * This product combines work with different licenses. See the "NOTICE" text * file for details on the various modules and licenses. * The "NOTICE" text file is part of the distribution. Any derivative works * that you distribute must include a readable copy of the "NOTICE" text file. *******************************************************************************/ /******************************************************************************* *******************************************************************************/ /******************************************************************************* *******************************************************************************/ package at.gv.egiz.eaaf.core.api.idp; import java.net.URI; public interface IConfiguration { /** * Get a configuration value from file based configuration * * @param key configuration key * @return configuration value or null if it is not found */ public String getBasicConfiguration(final String key); /** * Get a configuration value from file based configuration * * @param key configuration key * @param defaultValue Default value if no value with this key is found * @return configuration value */ public String getBasicConfiguration(final String key, final String defaultValue); /** * Get a configuration value from file based configuration * * @param key configuration key * @return configuration value as {@link Boolean.parseBoolean(value)} or null if key does not exist */ public Boolean getBasicConfigurationBoolean(final String key); /** * Get a configuration value from file based configuration * * @param key configuration key * @param defaultValue Default value if no value with this key is found * @return configuration value as {@link Boolean.parseBoolean(value)} or defaultValue if key does not exist */ public boolean getBasicConfigurationBoolean(final String key, final boolean defaultValue); /** * Get the root directory of the configuration folder * * @return */ public URI getConfigurationRootDirectory(); }