View Javadoc

1   package com.lexicalscope.jewel.cli;
2   
3   import java.util.List;
4   
5   import com.lexicalscope.fluentreflection.FluentMethod;
6   import com.lexicalscope.jewel.cli.specification.OptionSpecification;
7   import com.lexicalscope.jewel.cli.specification.SpecificationMultiplicity;
8   
9   class UnexpectedOptionSpecification implements OptionSpecification
10  {
11      private final String m_name;
12  
13      UnexpectedOptionSpecification(final String name)
14      {
15          m_name = name;
16      }
17  
18      @Override public String getCanonicalIdentifier() {
19          return m_name;
20      }
21  
22      @Override public Class<?> getType()
23      {
24          return Void.class;
25      }
26  
27      @Override public boolean isMultiValued()
28      {
29          return false;
30      }
31  
32      @Override public boolean isOptional()
33      {
34          return false;
35      }
36  
37      @Override public FluentMethod getMethod() {
38          return null;
39      }
40  
41      @Override public FluentMethod getOptionalityMethod() {
42          return null;
43      }
44  
45      @Override public List<String> getDefaultValue() {
46          return null;
47      }
48  
49      @Override public boolean hasDefaultValue() {
50          return false;
51      }
52  
53      @Override public boolean isHidden() {
54          return false;
55      }
56  
57      @Override public String getDescription() {
58          return "";
59      }
60  
61      @Override public boolean allowedThisManyValues(final int count) {
62          return false;
63      }
64  
65      @Override public String toString()
66      {
67          final StringBuilder result = new StringBuilder();
68          result.append(m_name);
69          return result.toString();
70      }
71  
72      @Override public boolean hasValue() {
73          return false;
74      }
75  
76      @Override public boolean hasExactCount() {
77          return false;
78      }
79  
80      @Override public int exactly() {
81          return 0;
82      }
83  
84      @Override public int minimum() {
85          return 0;
86      }
87  
88      @Override public int maximum() {
89          return 0;
90      }
91  
92      @Override public <T> T compareCountToSpecification(
93              final int valueCount,
94              final SpecificationMultiplicity<T> specificationMultiplicity) {
95          return specificationMultiplicity.allowed();
96      }
97  
98      @Override public int maximumArgumentConsumption() {
99          return 0;
100     }
101 }