You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by jk...@apache.org on 2003/06/06 01:28:11 UTC
cvs commit: jakarta-commons/cli/src/java/org/apache/commons/cli BaseOptionGroup.java OptionGroup.java ExclusiveOptionGroup.java InclusiveOptionGroup.java
jkeyes 2003/06/05 16:28:11
Modified: cli/src/java/org/apache/commons/cli Tag: cli_1_x
OptionGroup.java ExclusiveOptionGroup.java
InclusiveOptionGroup.java
Added: cli/src/java/org/apache/commons/cli Tag: cli_1_x
BaseOptionGroup.java
Log:
. more work on OptionGroup interface
. abstract base class for Exclusive and Inclusive groups
Revision Changes Path
No revision
No revision
1.8.2.4 +16 -0 jakarta-commons/cli/src/java/org/apache/commons/cli/OptionGroup.java
Index: OptionGroup.java
===================================================================
RCS file: /home/cvs/jakarta-commons/cli/src/java/org/apache/commons/cli/OptionGroup.java,v
retrieving revision 1.8.2.3
retrieving revision 1.8.2.4
diff -u -r1.8.2.3 -r1.8.2.4
--- OptionGroup.java 5 Jun 2003 23:02:24 -0000 1.8.2.3
+++ OptionGroup.java 5 Jun 2003 23:28:10 -0000 1.8.2.4
@@ -66,6 +66,22 @@
public interface OptionGroup {
/**
+ * Add the specified Option to this OptionGroup.
+ *
+ * @param option
+ * the Option to add to this instance
+ */
+ void add(Option option);
+
+ /**
+ * Add the specified OptionGroup to this OptionGroup.
+ *
+ * @param group
+ * the OptionGroup to add to this instance
+ */
+ void add(OptionGroup group);
+
+ /**
* Returns whether the OptionGroup contains an Option with
* the specified name.
*
1.1.2.3 +4 -83 jakarta-commons/cli/src/java/org/apache/commons/cli/Attic/ExclusiveOptionGroup.java
Index: ExclusiveOptionGroup.java
===================================================================
RCS file: /home/cvs/jakarta-commons/cli/src/java/org/apache/commons/cli/Attic/ExclusiveOptionGroup.java,v
retrieving revision 1.1.2.2
retrieving revision 1.1.2.3
diff -u -r1.1.2.2 -r1.1.2.3
--- ExclusiveOptionGroup.java 4 Jun 2003 01:11:40 -0000 1.1.2.2
+++ ExclusiveOptionGroup.java 5 Jun 2003 23:28:10 -0000 1.1.2.3
@@ -60,91 +60,13 @@
*/
package org.apache.commons.cli;
-import java.util.HashSet;
import java.util.Iterator;
-import java.util.Set;
/**
* @author John Keyes
*/
-public class ExclusiveOptionGroup implements OptionGroup {
+public class ExclusiveOptionGroup extends BaseOptionGroup {
- private Set options = new HashSet();
-
- private Set optionGroups = new HashSet();
-
- public void add(Option option) {
- this.options.add(option);
- }
-
- public void add(OptionGroup group) {
- this.optionGroups.add(group);
- }
-
- public boolean hasOption(String name) {
-
- if (name == null) {
- return false;
- }
-
- if (!options.isEmpty()) {
- for (Iterator iter = options.iterator(); iter.hasNext();) {
- Option option = (Option)iter.next();
-
- if (name.equals( "-" + option.getName())) {
- return true;
- }
- else if (name.equals( "--" + option.getLongName())) {
- return true;
- }
- }
- }
-
- if (!optionGroups.isEmpty()) {
- for (Iterator iter = optionGroups.iterator(); iter.hasNext();) {
- OptionGroup group = (OptionGroup)iter.next();
-
- if (group.hasOption(name)) {
- return true;
- }
- }
- }
-
- return false;
- }
-
- public Option getOption(String name) {
-
- if (name == null) {
- return null;
- }
-
- if (!options.isEmpty()) {
- for (Iterator iter = options.iterator(); iter.hasNext();) {
- Option option = (Option)iter.next();
-
- if (name.equals("-" + option.getName())) {
- return option;
- }
- else if (name.equals("--" + option.getLongName())) {
- return option;
- }
- }
- }
-
- if (!optionGroups.isEmpty()) {
- for (Iterator iter = optionGroups.iterator(); iter.hasNext();) {
- OptionGroup group = (OptionGroup)iter.next();
-
- if (group.hasOption(name)) {
- return group.getOption(name);
- }
- }
- }
-
- return null;
- }
-
/** @task return a descriptive message for the case
* when the group is not valid */
public void isValid(CommandLine cmdLine)
@@ -160,7 +82,6 @@
if (cmdLine.hasOption("-" + option.getName())) {
if (optionFound) {
throw new AlreadySelectedException("(5)");
- // return false;
}
optionFound = true;
}
1.1.2.3 +4 -82 jakarta-commons/cli/src/java/org/apache/commons/cli/Attic/InclusiveOptionGroup.java
Index: InclusiveOptionGroup.java
===================================================================
RCS file: /home/cvs/jakarta-commons/cli/src/java/org/apache/commons/cli/Attic/InclusiveOptionGroup.java,v
retrieving revision 1.1.2.2
retrieving revision 1.1.2.3
diff -u -r1.1.2.2 -r1.1.2.3
--- InclusiveOptionGroup.java 4 Jun 2003 01:11:41 -0000 1.1.2.2
+++ InclusiveOptionGroup.java 5 Jun 2003 23:28:10 -0000 1.1.2.3
@@ -60,90 +60,12 @@
*/
package org.apache.commons.cli;
-import java.util.HashSet;
import java.util.Iterator;
-import java.util.Set;
/**
* @author John Keyes
*/
-public class InclusiveOptionGroup implements OptionGroup {
-
- private Set options = new HashSet();
-
- private Set optionGroups = new HashSet();
-
- public void add(Option option) {
- this.options.add(option);
- }
-
- public void add(OptionGroup group) {
- this.optionGroups.add(group);
- }
-
- public boolean hasOption(String name) {
-
- if (name == null) {
- return false;
- }
-
- if (!options.isEmpty()) {
- for (Iterator iter = options.iterator(); iter.hasNext();) {
- Option option = (Option)iter.next();
-
- if (name.equals("-" + option.getName())) {
- return true;
- }
- else if (name.equals("--" + option.getLongName())) {
- return true;
- }
- }
- }
-
- if (!optionGroups.isEmpty()) {
- for (Iterator iter = options.iterator(); iter.hasNext();) {
- OptionGroup group = (OptionGroup)iter.next();
-
- if (group.hasOption(name)) {
- return true;
- }
- }
- }
-
- return false;
- }
-
- public Option getOption(String name) {
-
- if (name == null) {
- return null;
- }
-
- if (!options.isEmpty()) {
- for (Iterator iter = options.iterator(); iter.hasNext();) {
- Option option = (Option)iter.next();
-
- if (name.equals("-" + option.getName())) {
- return option;
- }
- else if (name.equals("--" + option.getLongName())) {
- return option;
- }
- }
- }
-
- if (!optionGroups.isEmpty()) {
- for (Iterator iter = options.iterator(); iter.hasNext();) {
- OptionGroup group = (OptionGroup)iter.next();
-
- if (group.hasOption(name)) {
- return group.getOption(name);
- }
- }
- }
-
- return null;
- }
+public class InclusiveOptionGroup extends BaseOptionGroup {
/** @task return a descriptive message for the case
* when the group is not valid */
No revision
No revision
1.1.2.1 +160 -0 jakarta-commons/cli/src/java/org/apache/commons/cli/Attic/BaseOptionGroup.java
---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-dev-help@jakarta.apache.org