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.Comparator; 20: import java.util.Set; 21: 22: /** 23: * Represents a line of help for a particular Option. 24: * 25: * @author <a href="@PUBLISHER-URL@">@PUBLISHER-NAME@</a> 26: * @version @PROJECT-VERSION@ 27: */ 28: public interface HelpLine 29: { 30: /** 31: * @return The description of the option 32: */ 33: String getDescription(); 34: 35: /** 36: * @return The level of indentation for this line 37: */ 38: int getIndent(); 39: 40: /** 41: * @return The Option that the help line relates to 42: */ 43: Option getOption(); 44: 45: /** 46: * Builds a usage string for the option using the specified settings and 47: * comparator. 48: * 49: * @param helpSettings 50: * the settings to apply 51: * @param comparator 52: * a comparator to sort options when applicable 53: * @return the usage string 54: */ 55: String usage( Set helpSettings, Comparator comparator );