- java.lang.Object
-
- com.github.rvesse.airline.model.OptionMetadata
-
public class OptionMetadata extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.Set<Accessor>accessorsprivate intarityprivate java.lang.Stringdescriptionprivate booleanhiddenprivate java.util.Set<java.lang.String>optionsprivate OptionTypeoptionTypeprivate booleanoverridesprivate TypeConverterProviderproviderprivate java.util.List<OptionRestriction>restrictionsprivate booleansealedprivate java.util.List<java.lang.String>titles
-
Constructor Summary
Constructors Constructor Description OptionMetadata(OptionType optionType, java.lang.Iterable<java.lang.String> options, java.lang.Iterable<java.lang.String> titles, java.lang.String description, int arity, boolean hidden, boolean overrides, boolean sealed, java.lang.Iterable<OptionRestriction> restrictions, TypeConverterProvider typeConverterProvider, java.lang.Iterable<java.lang.reflect.Field> path)OptionMetadata(java.lang.Iterable<OptionMetadata> options)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description booleanequals(java.lang.Object o)java.util.Set<Accessor>getAccessors()intgetArity()java.lang.StringgetDescription()java.lang.Class<?>getJavaType()java.util.Set<java.lang.String>getOptions()OptionTypegetOptionType()java.util.List<OptionRestriction>getRestrictions()java.lang.StringgetTitle()Deprecated.Options now support multiple titles, usegetTitle(int)to get a specific title orgetTitles()to get all titlesjava.lang.StringgetTitle(int index)java.util.List<java.lang.String>getTitles()TypeConverterProvidergetTypeConverterProvider()inthashCode()booleanisHidden()booleanisMultiValued()booleanisOverride()booleanisRequired()booleanisSealed()static OptionMetadataoverride(java.util.Set<java.lang.String> names, OptionMetadata parent, OptionMetadata child)Tries to merge the option metadata together such that the child metadata takes precedence.java.lang.StringtoString()
-
-
-
Field Detail
-
optionType
private final OptionType optionType
-
options
private final java.util.Set<java.lang.String> options
-
titles
private final java.util.List<java.lang.String> titles
-
description
private final java.lang.String description
-
arity
private final int arity
-
hidden
private final boolean hidden
-
overrides
private final boolean overrides
-
sealed
private final boolean sealed
-
restrictions
private final java.util.List<OptionRestriction> restrictions
-
provider
private final TypeConverterProvider provider
-
accessors
private java.util.Set<Accessor> accessors
-
-
Constructor Detail
-
OptionMetadata
public OptionMetadata(OptionType optionType, java.lang.Iterable<java.lang.String> options, java.lang.Iterable<java.lang.String> titles, java.lang.String description, int arity, boolean hidden, boolean overrides, boolean sealed, java.lang.Iterable<OptionRestriction> restrictions, TypeConverterProvider typeConverterProvider, java.lang.Iterable<java.lang.reflect.Field> path)
-
OptionMetadata
public OptionMetadata(java.lang.Iterable<OptionMetadata> options)
-
-
Method Detail
-
getOptionType
public OptionType getOptionType()
-
getOptions
public java.util.Set<java.lang.String> getOptions()
-
getTitles
public java.util.List<java.lang.String> getTitles()
-
getTitle
@Deprecated public java.lang.String getTitle()
Deprecated.Options now support multiple titles, usegetTitle(int)to get a specific title orgetTitles()to get all titlesGets the first title- Returns:
- First title
-
getTitle
public java.lang.String getTitle(int index)
-
getDescription
public java.lang.String getDescription()
-
getArity
public int getArity()
-
isRequired
public boolean isRequired()
-
isHidden
public boolean isHidden()
-
isOverride
public boolean isOverride()
-
isSealed
public boolean isSealed()
-
isMultiValued
public boolean isMultiValued()
-
getJavaType
public java.lang.Class<?> getJavaType()
-
getAccessors
public java.util.Set<Accessor> getAccessors()
-
getRestrictions
public java.util.List<OptionRestriction> getRestrictions()
-
getTypeConverterProvider
public TypeConverterProvider getTypeConverterProvider()
-
equals
public boolean equals(java.lang.Object o)
- Overrides:
equalsin classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCodein classjava.lang.Object
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
override
public static OptionMetadata override(java.util.Set<java.lang.String> names, OptionMetadata parent, OptionMetadata child)
Tries to merge the option metadata together such that the child metadata takes precedence. Not all options can be successfully overridden and an error may be thrown in cases where merging is not possibleThe following pieces of metadata may be overridden:
- Title
- Description
- Required
- Hidden
- Parameters:
parent- Parentchild- Child- Returns:
- Merged metadata
-
-