Module com.github.rvesse.airline
Class PatternRestriction
- java.lang.Object
-
- com.github.rvesse.airline.restrictions.AbstractCommonRestriction
-
- com.github.rvesse.airline.restrictions.common.PatternRestriction
-
- All Implemented Interfaces:
HelpHint
,ArgumentsRestriction
,OptionRestriction
public class PatternRestriction extends AbstractCommonRestriction implements HelpHint
A restriction which requires the raw values to match a given regular expression
-
-
Field Summary
Fields Modifier and Type Field Description private java.lang.String
description
private java.util.regex.Pattern
pattern
-
Constructor Summary
Constructors Constructor Description PatternRestriction(java.lang.String pattern, int flags, java.lang.String description)
Creates a pattern restriction
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.String[]
getContentBlock(int blockNumber)
Gets the content block with the given numberHelpFormat
getFormat()
Gets the format of the provided help informationjava.lang.String
getPreamble()
Gets the preamble text that should be includedint
numContentBlocks()
Gets the number of content blocks provided<T> void
preValidate(ParseState<T> state, ArgumentsMetadata arguments, java.lang.String value)
Method that is called before Airline attempts to convert a string argument received into a strongly typed Java value<T> void
preValidate(ParseState<T> state, OptionMetadata option, java.lang.String value)
Method that is called before Airline attempts to convert a string argument received into a strongly typed Java value-
Methods inherited from class com.github.rvesse.airline.restrictions.AbstractCommonRestriction
finalValidate, finalValidate, getArgumentTitle, getArgumentTitle, getOptionTitle, postValidate, postValidate
-
-
-
-
Constructor Detail
-
PatternRestriction
public PatternRestriction(java.lang.String pattern, int flags, java.lang.String description)
Creates a pattern restriction- Parameters:
pattern
- Regular expression patternflags
- Regular expression flagsdescription
- Friendly description of the intent of the pattern, included in errors when the restriction is violated
-
-
Method Detail
-
preValidate
public <T> void preValidate(ParseState<T> state, OptionMetadata option, java.lang.String value)
Description copied from interface:OptionRestriction
Method that is called before Airline attempts to convert a string argument received into a strongly typed Java value- Specified by:
preValidate
in interfaceOptionRestriction
- Overrides:
preValidate
in classAbstractCommonRestriction
- Parameters:
state
- Parser stateoption
- Option meta-datavalue
- String value
-
preValidate
public <T> void preValidate(ParseState<T> state, ArgumentsMetadata arguments, java.lang.String value)
Description copied from interface:ArgumentsRestriction
Method that is called before Airline attempts to convert a string argument received into a strongly typed Java value- Specified by:
preValidate
in interfaceArgumentsRestriction
- Overrides:
preValidate
in classAbstractCommonRestriction
- Parameters:
state
- Parser statearguments
- Arguments meta-datavalue
- String value
-
getPreamble
public java.lang.String getPreamble()
Description copied from interface:HelpHint
Gets the preamble text that should be included- Specified by:
getPreamble
in interfaceHelpHint
- Returns:
- Preamble text
-
getFormat
public HelpFormat getFormat()
Description copied from interface:HelpHint
Gets the format of the provided help information
-
numContentBlocks
public int numContentBlocks()
Description copied from interface:HelpHint
Gets the number of content blocks providedHelp generators should consult the
HelpHint.getFormat()
return value to determine how to format the content blocks but they are not required to do so- Specified by:
numContentBlocks
in interfaceHelpHint
- Returns:
- Number of content blocks
-
getContentBlock
public java.lang.String[] getContentBlock(int blockNumber)
Description copied from interface:HelpHint
Gets the content block with the given number- Specified by:
getContentBlock
in interfaceHelpHint
- Parameters:
blockNumber
- Block number- Returns:
- Content Block
-
-