1 /* 2 * Copyright (C) 2005 Alfresco, Inc. 3 * 4 * Licensed under the Mozilla Public License version 1.1 5 * with a permitted attribution clause. You may obtain a 6 * copy of the License at 7 * 8 * http://www.alfresco.org/legal/license.txt 9 * 10 * Unless required by applicable law or agreed to in writing, 11 * software distributed under the License is distributed on an 12 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, 13 * either express or implied. See the License for the specific 14 * language governing permissions and limitations under the 15 * License. 16 */ 17 package org.alfresco.config; 18 19 import java.util.List; 20 21 /** 22 * Definition of a config section. 23 * 24 * @author gavinc 25 */ 26 public interface ConfigSection 27 { 28 /** 29 * Returns the name of an evaluator to use to determine whether the config 30 * section this object represents is applicable to the current lookup 31 * operation 32 * 33 * @return Name of an evaluator held by the config service 34 */ 35 public String getEvaluator(); 36 37 /** 38 * Returns the condition to use to determine whether the config section this 39 * object represents is applicable. The condition is passed to the evaluator 40 * 41 * @return Condition to test 42 */ 43 public String getCondition(); 44 45 /** 46 * Returns the config elements that make up this config section 47 * 48 * @return List of config elements 49 */ 50 public List<ConfigElement> getConfigElements(); 51 52 /** 53 * Determines whether this config section is global 54 * 55 * @return true if it is global, false otherwise 56 */ 57 public boolean isGlobal(); 58 59 /** 60 * Determines whether the config elements found inside this section 61 * should replace any previously found config elements with the same 62 * name 63 * 64 * @return true if config elements should replace existing ones, false otherwise 65 */ 66 public boolean isReplace(); 67 } 68