1 // Copyright 2007 The Apache Software Foundation 2 // 3 // Licensed under the Apache License, Version 2.0 (the "License"); 4 // you may not use this file except in compliance with the License. 5 // You may obtain a copy of the License at 6 // 7 // http://www.apache.org/licenses/LICENSE-2.0 8 // 9 // Unless required by applicable law or agreed to in writing, software 10 // distributed under the License is distributed on an "AS IS" BASIS, 11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 // See the License for the specific language governing permissions and 13 // limitations under the License. 14 15 package org.apache.hivemind.definition; 16 17 /** 18 * Defines a parser for the processing of configuration data that is provided 19 * in a textual format. The parsed data is handled as {@link Contribution} to a 20 * configuration point. Each parser is associated with a certain input format, 21 * which is specified by {@link #getInputFormat()}. 22 * The parsing is done by an instance of {@link ConfigurationParser} 23 * which is created by a {@link ConfigurationParserConstructor}. 24 * 25 * @author Huegen 26 */ 27 public interface ConfigurationParserDefinition extends ExtensionDefinition 28 { 29 /** 30 * @return the format of the data the parser can process 31 */ 32 public String getInputFormat(); 33 34 /** 35 * @return a factory for the construction of a parser instance 36 */ 37 public ConfigurationParserConstructor getParserConstructor(); 38 } 39