1 package org.cyclopsgroup.jcli.impl; 2 3 import org.cyclopsgroup.jcli.annotation.Option; 4 5 class AnnotationOption implements org.cyclopsgroup.jcli.spi.Option { 6 private final boolean flag; 7 8 private final boolean multiValue; 9 10 private final Option option; 11 12 AnnotationOption(Option option, boolean flag, boolean multiValue) { 13 this.option = option; 14 this.flag = flag; 15 this.multiValue = multiValue; 16 } 17 18 @Override 19 public String getDefaultValue() { 20 return option.defaultValue(); 21 } 22 23 @Override 24 public String getDescription() { 25 return option.description(); 26 } 27 28 @Override 29 public String getDisplayName() { 30 return option.displayName(); 31 } 32 33 @Override 34 public String getLongName() { 35 return option.longName(); 36 } 37 38 @Override 39 public String getName() { 40 return option.name(); 41 } 42 43 @Override 44 public boolean isFlag() { 45 return flag; 46 } 47 48 @Override 49 public boolean isMultiValue() { 50 return multiValue; 51 } 52 53 @Override 54 public boolean isRequired() { 55 return option.required(); 56 } 57 }