Author: bayard
Date: Fri Jun 29 00:08:44 2007
New Revision: 551815
URL: http://svn.apache.org/viewvc?view=rev&rev=551815
Log:
Applying the patch from CLI-135 to put the public addValue method back, even
though it just throws an exception. This maintains binary compatibility, for
some level of compatibility.
Modified:
jakarta/commons/proper/cli/branches/cli-1.0.x/src/java/org/apache/commons/cli/Option.java
jakarta/commons/proper/cli/branches/cli-1.0.x/src/java/org/apache/commons/cli/Parser.java
jakarta/commons/proper/cli/branches/cli-1.0.x/src/test/org/apache/commons/cli/OptionTest.java
Modified:
jakarta/commons/proper/cli/branches/cli-1.0.x/src/java/org/apache/commons/cli/Option.java
URL:
http://svn.apache.org/viewvc/jakarta/commons/proper/cli/branches/cli-1.0.x/src/java/org/apache/commons/cli/Option.java?view=diff&rev=551815&r1=551814&r2=551815
==============================================================================
---
jakarta/commons/proper/cli/branches/cli-1.0.x/src/java/org/apache/commons/cli/Option.java
(original)
+++
jakarta/commons/proper/cli/branches/cli-1.0.x/src/java/org/apache/commons/cli/Option.java
Fri Jun 29 00:08:44 2007
@@ -401,7 +401,7 @@
*
* @param value is a/the value of this Option
*/
- void addValue(String value)
+ void addValueForProcessing(String value)
{
switch (numberOfArgs)
{
@@ -647,6 +647,13 @@
*/
void clearValues() {
this.values.clear();
+ }
+
+ public boolean addValue(Object object) {
+ throw new UnsupportedOperationException(
+ "The addValue method is not intended for client use. " +
+ "Subclasses should use the addValueForProcessing method instead. "
+ );
}
}
Modified:
jakarta/commons/proper/cli/branches/cli-1.0.x/src/java/org/apache/commons/cli/Parser.java
URL:
http://svn.apache.org/viewvc/jakarta/commons/proper/cli/branches/cli-1.0.x/src/java/org/apache/commons/cli/Parser.java?view=diff&rev=551815&r1=551814&r2=551815
==============================================================================
---
jakarta/commons/proper/cli/branches/cli-1.0.x/src/java/org/apache/commons/cli/Parser.java
(original)
+++
jakarta/commons/proper/cli/branches/cli-1.0.x/src/java/org/apache/commons/cli/Parser.java
Fri Jun 29 00:08:44 2007
@@ -258,7 +258,7 @@
{
try
{
- opt.addValue(value);
+ opt.addValueForProcessing(value);
}
catch (RuntimeException exp)
{
@@ -340,7 +340,7 @@
// found a value
try
{
- opt.addValue( Util.stripLeadingAndTrailingQuotes(str) );
+ opt.addValueForProcessing(
Util.stripLeadingAndTrailingQuotes(str) );
}
catch (RuntimeException exp)
{
Modified:
jakarta/commons/proper/cli/branches/cli-1.0.x/src/test/org/apache/commons/cli/OptionTest.java
URL:
http://svn.apache.org/viewvc/jakarta/commons/proper/cli/branches/cli-1.0.x/src/test/org/apache/commons/cli/OptionTest.java?view=diff&rev=551815&r1=551814&r2=551815
==============================================================================
---
jakarta/commons/proper/cli/branches/cli-1.0.x/src/test/org/apache/commons/cli/OptionTest.java
(original)
+++
jakarta/commons/proper/cli/branches/cli-1.0.x/src/test/org/apache/commons/cli/OptionTest.java
Fri Jun 29 00:08:44 2007
@@ -23,8 +23,18 @@
*/
public class OptionTest extends TestCase {
+ private static class TestOption extends Option {
+ public TestOption(String opt, boolean hasArg, String description)
throws IllegalArgumentException {
+ super(opt, hasArg, description);
+ }
+ public boolean addValue(String value) {
+ addValueForProcessing(value);
+ return true;
+ }
+ }
+
public void testClear() {
- Option option = new Option("x", true, "");
+ TestOption option = new TestOption("x", true, "");
assertEquals(0, option.getValuesList().size());
option.addValue("a");
assertEquals(1, option.getValuesList().size());
@@ -34,8 +44,8 @@
// See http://issues.apache.org/jira/browse/CLI-21
public void testClone() throws CloneNotSupportedException {
- Option a = new Option("a", true, "");
- Option b = (Option) a.clone();
+ TestOption a = new TestOption("a", true, "");
+ TestOption b = (TestOption) a.clone();
assertEquals(a, b);
assertNotSame(a, b);
a.setDescription("a");
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]