summaryrefslogtreecommitdiff
path: root/src/main/java/com/beust/jcommander/WrappedParameter.java
diff options
context:
space:
mode:
authorCedric Beust <cedric@beust.com>2012-01-10 15:28:43 -0800
committerCedric Beust <cedric@beust.com>2012-01-10 15:28:43 -0800
commit78db59cfd11a5a1fb2eb4602f246b63dea91bf93 (patch)
treeb4ccfbfea34ba606fbd1992217ce9ce3b0c642be /src/main/java/com/beust/jcommander/WrappedParameter.java
parent932e1670f1993a228a0d85c8b27cfd4a6a065f6c (diff)
downloadjcommander-78db59cfd11a5a1fb2eb4602f246b63dea91bf93.tar.gz
More DynamicParameter work.
Diffstat (limited to 'src/main/java/com/beust/jcommander/WrappedParameter.java')
-rw-r--r--src/main/java/com/beust/jcommander/WrappedParameter.java41
1 files changed, 41 insertions, 0 deletions
diff --git a/src/main/java/com/beust/jcommander/WrappedParameter.java b/src/main/java/com/beust/jcommander/WrappedParameter.java
new file mode 100644
index 0000000..59beb15
--- /dev/null
+++ b/src/main/java/com/beust/jcommander/WrappedParameter.java
@@ -0,0 +1,41 @@
+package com.beust.jcommander;
+
+/**
+ * Encapsulates the operations common to @Parameter and @DynamicParameter
+ */
+public class WrappedParameter {
+ private Parameter m_parameter;
+ private DynamicParameter m_dynamicParameter;
+
+ public WrappedParameter(Parameter p) {
+ m_parameter = p;
+ }
+
+ public WrappedParameter(DynamicParameter p) {
+ m_dynamicParameter = p;
+ }
+
+ public int arity() {
+ return m_parameter != null ? m_parameter.arity() : m_dynamicParameter.arity();
+ }
+
+ public boolean hidden() {
+ return m_parameter != null ? m_parameter.hidden() : m_dynamicParameter.hidden();
+ }
+
+ public boolean required() {
+ return m_parameter != null ? m_parameter.required() : m_dynamicParameter.required();
+ }
+
+ public boolean password() {
+ return m_parameter != null ? m_parameter.password() : false;
+ }
+
+ public String[] names() {
+ return m_parameter != null ? m_parameter.names() : m_dynamicParameter.names();
+ }
+
+ public boolean variableArity() {
+ return m_parameter != null ? m_parameter.variableArity() : false;
+ }
+}