Frames | No Frames |
1: /** 2: * Copyright 2003-2004 The Apache Software Foundation 3: * Copyright 2005 Stephen McConnell 4: * 5: * Licensed under the Apache License, Version 2.0 (the "License"); 6: * you may not use this file except in compliance with the License. 7: * You may obtain a copy of the License at 8: * 9: * http://www.apache.org/licenses/LICENSE-2.0 10: * 11: * Unless required by applicable law or agreed to in writing, software 12: * distributed under the License is distributed on an "AS IS" BASIS, 13: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14: * See the License for the specific language governing permissions and 15: * limitations under the License. 16: */ 17: package net.dpml.cli; 18: 19: import java.util.ListIterator; 20: 21: /** 22: * An Option that can have an argument and/or group of child Options in the form 23: * "-f <arg> [-a|-b|-c]". 24: * 25: * @author <a href="@PUBLISHER-URL@">@PUBLISHER-NAME@</a> 26: * @version @PROJECT-VERSION@ 27: */ 28: public interface Parent extends Option 29: { 30: 31: /** 32: * Processes the parent part of the Option. The combination of parent, 33: * argument and children is handled by the process method. 34: * @see Option#process(WriteableCommandLine, ListIterator) 35: * 36: * @param commandLine the CommandLine to write results to 37: * @param args a ListIterator over argument strings positioned at the next 38: * argument to process 39: * @throws OptionException if an error occurs while processing 40: */ 41: void processParent( 42: WriteableCommandLine commandLine, ListIterator args ) 43: throws OptionException; 44: }